#ifdef TARGET_ARM
typedef void (*on_ARM_breakpoint_enter_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_ARM_breakpoint_return_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_ARM_cacheflush_enter_t)(CPUState* cpu, target_ulong pc, uint32_t start, uint32_t end, uint32_t flags);
typedef void (*on_ARM_cacheflush_return_t)(CPUState* cpu, target_ulong pc, uint32_t start, uint32_t end, uint32_t flags);
typedef void (*on_ARM_cmpxchg_enter_t)(CPUState* cpu, target_ulong pc, uint32_t val, uint32_t src, uint32_t dest);
typedef void (*on_ARM_cmpxchg_return_t)(CPUState* cpu, target_ulong pc, uint32_t val, uint32_t src, uint32_t dest);
typedef void (*on_arm_mremap_enter_t)(CPUState* cpu, target_ulong pc, uint32_t addr, uint32_t old_len, uint32_t new_len, uint32_t flags, uint32_t new_addr);
typedef void (*on_arm_mremap_return_t)(CPUState* cpu, target_ulong pc, uint32_t addr, uint32_t old_len, uint32_t new_len, uint32_t flags, uint32_t new_addr);
typedef void (*on_ARM_null_segfault_enter_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_ARM_null_segfault_return_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_ARM_set_tls_enter_t)(CPUState* cpu, target_ulong pc, uint32_t arg);
typedef void (*on_ARM_set_tls_return_t)(CPUState* cpu, target_ulong pc, uint32_t arg);
typedef void (*on_ARM_user26_mode_enter_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_ARM_user26_mode_return_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_ARM_usr32_mode_enter_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_ARM_usr32_mode_return_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_clone_enter_t)(CPUState* cpu, target_ulong pc, uint32_t clone_flags, uint32_t newsp, uint32_t parent_tidptr, int32_t tls_val, uint32_t child_tidptr, uint32_t regs);
typedef void (*on_clone_return_t)(CPUState* cpu, target_ulong pc, uint32_t clone_flags, uint32_t newsp, uint32_t parent_tidptr, int32_t tls_val, uint32_t child_tidptr, uint32_t regs);
typedef void (*on_do_mmap2_enter_t)(CPUState* cpu, target_ulong pc, uint32_t addr, uint32_t len, uint32_t prot, uint32_t flags, uint32_t fd, uint32_t pgoff);
typedef void (*on_do_mmap2_return_t)(CPUState* cpu, target_ulong pc, uint32_t addr, uint32_t len, uint32_t prot, uint32_t flags, uint32_t fd, uint32_t pgoff);
typedef void (*on_do_sigaltstack_enter_t)(CPUState* cpu, target_ulong pc, uint32_t uss, uint32_t uoss);
typedef void (*on_do_sigaltstack_return_t)(CPUState* cpu, target_ulong pc, uint32_t uss, uint32_t uoss);
typedef void (*on_execve_enter_t)(CPUState* cpu, target_ulong pc, uint32_t filename, uint32_t argv, uint32_t envp);
typedef void (*on_execve_return_t)(CPUState* cpu, target_ulong pc, uint32_t filename, uint32_t argv, uint32_t envp);
typedef void (*on_fork_enter_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_fork_return_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_rt_sigaction_enter_t)(CPUState* cpu, target_ulong pc, int32_t sig, uint32_t act, uint32_t oact, uint32_t sigsetsize);
typedef void (*on_rt_sigaction_return_t)(CPUState* cpu, target_ulong pc, int32_t sig, uint32_t act, uint32_t oact, uint32_t sigsetsize);
typedef void (*on_sigaction_enter_t)(CPUState* cpu, target_ulong pc, int32_t sig, uint32_t act, uint32_t oact);
typedef void (*on_sigaction_return_t)(CPUState* cpu, target_ulong pc, int32_t sig, uint32_t act, uint32_t oact);
typedef void (*on_sigreturn_enter_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_sigreturn_return_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_sigsuspend_enter_t)(CPUState* cpu, target_ulong pc, int32_t restart, uint32_t oldmask, uint32_t mask);
typedef void (*on_sigsuspend_return_t)(CPUState* cpu, target_ulong pc, int32_t restart, uint32_t oldmask, uint32_t mask);
typedef void (*on_sys_accept_enter_t)(CPUState* cpu, target_ulong pc, int32_t arg0, uint32_t arg1, uint32_t arg2);
typedef void (*on_sys_accept_return_t)(CPUState* cpu, target_ulong pc, int32_t arg0, uint32_t arg1, uint32_t arg2);
typedef void (*on_sys_access_enter_t)(CPUState* cpu, target_ulong pc, uint32_t filename, int32_t mode);
typedef void (*on_sys_access_return_t)(CPUState* cpu, target_ulong pc, uint32_t filename, int32_t mode);
typedef void (*on_sys_acct_enter_t)(CPUState* cpu, target_ulong pc, uint32_t name);
typedef void (*on_sys_acct_return_t)(CPUState* cpu, target_ulong pc, uint32_t name);
typedef void (*on_sys_add_key_enter_t)(CPUState* cpu, target_ulong pc, uint32_t _type, uint32_t _description, uint32_t _payload, uint32_t plen, uint32_t destringid);
typedef void (*on_sys_add_key_return_t)(CPUState* cpu, target_ulong pc, uint32_t _type, uint32_t _description, uint32_t _payload, uint32_t plen, uint32_t destringid);
typedef void (*on_sys_adjtimex_enter_t)(CPUState* cpu, target_ulong pc, uint32_t txc_p);
typedef void (*on_sys_adjtimex_return_t)(CPUState* cpu, target_ulong pc, uint32_t txc_p);
typedef void (*on_sys_arm_fadvise64_64_enter_t)(CPUState* cpu, target_ulong pc, int32_t fd, int32_t advice, uint64_t offset, uint64_t len);
typedef void (*on_sys_arm_fadvise64_64_return_t)(CPUState* cpu, target_ulong pc, int32_t fd, int32_t advice, uint64_t offset, uint64_t len);
typedef void (*on_sys_bdflush_enter_t)(CPUState* cpu, target_ulong pc, int32_t func, int32_t _data);
typedef void (*on_sys_bdflush_return_t)(CPUState* cpu, target_ulong pc, int32_t func, int32_t _data);
typedef void (*on_sys_bind_enter_t)(CPUState* cpu, target_ulong pc, int32_t arg0, uint32_t arg1, int32_t arg2);
typedef void (*on_sys_bind_return_t)(CPUState* cpu, target_ulong pc, int32_t arg0, uint32_t arg1, int32_t arg2);
typedef void (*on_sys_brk_enter_t)(CPUState* cpu, target_ulong pc, uint32_t brk);
typedef void (*on_sys_brk_return_t)(CPUState* cpu, target_ulong pc, uint32_t brk);
typedef void (*on_sys_capget_enter_t)(CPUState* cpu, target_ulong pc, uint32_t header, uint32_t dataptr);
typedef void (*on_sys_capget_return_t)(CPUState* cpu, target_ulong pc, uint32_t header, uint32_t dataptr);
typedef void (*on_sys_capset_enter_t)(CPUState* cpu, target_ulong pc, uint32_t header, uint32_t _data);
typedef void (*on_sys_capset_return_t)(CPUState* cpu, target_ulong pc, uint32_t header, uint32_t _data);
typedef void (*on_sys_chdir_enter_t)(CPUState* cpu, target_ulong pc, uint32_t filename);
typedef void (*on_sys_chdir_return_t)(CPUState* cpu, target_ulong pc, uint32_t filename);
typedef void (*on_sys_chmod_enter_t)(CPUState* cpu, target_ulong pc, uint32_t filename, uint32_t mode);
typedef void (*on_sys_chmod_return_t)(CPUState* cpu, target_ulong pc, uint32_t filename, uint32_t mode);
typedef void (*on_sys_chown_enter_t)(CPUState* cpu, target_ulong pc, uint32_t filename, uint32_t user, uint32_t group);
typedef void (*on_sys_chown_return_t)(CPUState* cpu, target_ulong pc, uint32_t filename, uint32_t user, uint32_t group);
typedef void (*on_sys_chown16_enter_t)(CPUState* cpu, target_ulong pc, uint32_t filename, uint32_t user, uint32_t group);
typedef void (*on_sys_chown16_return_t)(CPUState* cpu, target_ulong pc, uint32_t filename, uint32_t user, uint32_t group);
typedef void (*on_sys_chroot_enter_t)(CPUState* cpu, target_ulong pc, uint32_t filename);
typedef void (*on_sys_chroot_return_t)(CPUState* cpu, target_ulong pc, uint32_t filename);
typedef void (*on_sys_clock_getres_enter_t)(CPUState* cpu, target_ulong pc, uint32_t which_clock, uint32_t tp);
typedef void (*on_sys_clock_getres_return_t)(CPUState* cpu, target_ulong pc, uint32_t which_clock, uint32_t tp);
typedef void (*on_sys_clock_gettime_enter_t)(CPUState* cpu, target_ulong pc, uint32_t which_clock, uint32_t tp);
typedef void (*on_sys_clock_gettime_return_t)(CPUState* cpu, target_ulong pc, uint32_t which_clock, uint32_t tp);
typedef void (*on_sys_clock_nanosleep_enter_t)(CPUState* cpu, target_ulong pc, uint32_t which_clock, int32_t flags, uint32_t rqtp, uint32_t rmtp);
typedef void (*on_sys_clock_nanosleep_return_t)(CPUState* cpu, target_ulong pc, uint32_t which_clock, int32_t flags, uint32_t rqtp, uint32_t rmtp);
typedef void (*on_sys_clock_settime_enter_t)(CPUState* cpu, target_ulong pc, uint32_t which_clock, uint32_t tp);
typedef void (*on_sys_clock_settime_return_t)(CPUState* cpu, target_ulong pc, uint32_t which_clock, uint32_t tp);
typedef void (*on_sys_close_enter_t)(CPUState* cpu, target_ulong pc, uint32_t fd);
typedef void (*on_sys_close_return_t)(CPUState* cpu, target_ulong pc, uint32_t fd);
typedef void (*on_sys_connect_enter_t)(CPUState* cpu, target_ulong pc, int32_t arg0, uint32_t arg1, int32_t arg2);
typedef void (*on_sys_connect_return_t)(CPUState* cpu, target_ulong pc, int32_t arg0, uint32_t arg1, int32_t arg2);
typedef void (*on_sys_creat_enter_t)(CPUState* cpu, target_ulong pc, uint32_t pathname, int32_t mode);
typedef void (*on_sys_creat_return_t)(CPUState* cpu, target_ulong pc, uint32_t pathname, int32_t mode);
typedef void (*on_sys_delete_module_enter_t)(CPUState* cpu, target_ulong pc, uint32_t name_user, uint32_t flags);
typedef void (*on_sys_delete_module_return_t)(CPUState* cpu, target_ulong pc, uint32_t name_user, uint32_t flags);
typedef void (*on_sys_dup_enter_t)(CPUState* cpu, target_ulong pc, uint32_t fildes);
typedef void (*on_sys_dup_return_t)(CPUState* cpu, target_ulong pc, uint32_t fildes);
typedef void (*on_sys_dup2_enter_t)(CPUState* cpu, target_ulong pc, uint32_t oldfd, uint32_t newfd);
typedef void (*on_sys_dup2_return_t)(CPUState* cpu, target_ulong pc, uint32_t oldfd, uint32_t newfd);
typedef void (*on_sys_dup3_enter_t)(CPUState* cpu, target_ulong pc, uint32_t oldfd, uint32_t newfd, int32_t flags);
typedef void (*on_sys_dup3_return_t)(CPUState* cpu, target_ulong pc, uint32_t oldfd, uint32_t newfd, int32_t flags);
typedef void (*on_sys_epoll_create_enter_t)(CPUState* cpu, target_ulong pc, int32_t size);
typedef void (*on_sys_epoll_create_return_t)(CPUState* cpu, target_ulong pc, int32_t size);
typedef void (*on_sys_epoll_create1_enter_t)(CPUState* cpu, target_ulong pc, int32_t flags);
typedef void (*on_sys_epoll_create1_return_t)(CPUState* cpu, target_ulong pc, int32_t flags);
typedef void (*on_sys_epoll_ctl_enter_t)(CPUState* cpu, target_ulong pc, int32_t epfd, int32_t op, int32_t fd, uint32_t event);
typedef void (*on_sys_epoll_ctl_return_t)(CPUState* cpu, target_ulong pc, int32_t epfd, int32_t op, int32_t fd, uint32_t event);
typedef void (*on_sys_epoll_wait_enter_t)(CPUState* cpu, target_ulong pc, int32_t epfd, uint32_t events, int32_t maxevents, int32_t timeout);
typedef void (*on_sys_epoll_wait_return_t)(CPUState* cpu, target_ulong pc, int32_t epfd, uint32_t events, int32_t maxevents, int32_t timeout);
typedef void (*on_sys_eventfd_enter_t)(CPUState* cpu, target_ulong pc, uint32_t count);
typedef void (*on_sys_eventfd_return_t)(CPUState* cpu, target_ulong pc, uint32_t count);
typedef void (*on_sys_eventfd2_enter_t)(CPUState* cpu, target_ulong pc, uint32_t count, int32_t flags);
typedef void (*on_sys_eventfd2_return_t)(CPUState* cpu, target_ulong pc, uint32_t count, int32_t flags);
typedef void (*on_sys_exit_enter_t)(CPUState* cpu, target_ulong pc, int32_t error_code);
typedef void (*on_sys_exit_return_t)(CPUState* cpu, target_ulong pc, int32_t error_code);
typedef void (*on_sys_exit_group_enter_t)(CPUState* cpu, target_ulong pc, int32_t error_code);
typedef void (*on_sys_exit_group_return_t)(CPUState* cpu, target_ulong pc, int32_t error_code);
typedef void (*on_sys_faccessat_enter_t)(CPUState* cpu, target_ulong pc, int32_t dfd, uint32_t filename, int32_t mode);
typedef void (*on_sys_faccessat_return_t)(CPUState* cpu, target_ulong pc, int32_t dfd, uint32_t filename, int32_t mode);
typedef void (*on_sys_fallocate_enter_t)(CPUState* cpu, target_ulong pc, int32_t fd, int32_t mode, uint64_t offset, uint64_t len);
typedef void (*on_sys_fallocate_return_t)(CPUState* cpu, target_ulong pc, int32_t fd, int32_t mode, uint64_t offset, uint64_t len);
typedef void (*on_sys_fchdir_enter_t)(CPUState* cpu, target_ulong pc, uint32_t fd);
typedef void (*on_sys_fchdir_return_t)(CPUState* cpu, target_ulong pc, uint32_t fd);
typedef void (*on_sys_fchmod_enter_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t mode);
typedef void (*on_sys_fchmod_return_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t mode);
typedef void (*on_sys_fchmodat_enter_t)(CPUState* cpu, target_ulong pc, int32_t dfd, uint32_t filename, uint32_t mode);
typedef void (*on_sys_fchmodat_return_t)(CPUState* cpu, target_ulong pc, int32_t dfd, uint32_t filename, uint32_t mode);
typedef void (*on_sys_fchown_enter_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t user, uint32_t group);
typedef void (*on_sys_fchown_return_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t user, uint32_t group);
typedef void (*on_sys_fchown16_enter_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t user, uint32_t group);
typedef void (*on_sys_fchown16_return_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t user, uint32_t group);
typedef void (*on_sys_fchownat_enter_t)(CPUState* cpu, target_ulong pc, int32_t dfd, uint32_t filename, uint32_t user, uint32_t group, int32_t flag);
typedef void (*on_sys_fchownat_return_t)(CPUState* cpu, target_ulong pc, int32_t dfd, uint32_t filename, uint32_t user, uint32_t group, int32_t flag);
typedef void (*on_sys_fcntl_enter_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t cmd, uint32_t arg);
typedef void (*on_sys_fcntl_return_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t cmd, uint32_t arg);
typedef void (*on_sys_fcntl64_enter_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t cmd, uint32_t arg);
typedef void (*on_sys_fcntl64_return_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t cmd, uint32_t arg);
typedef void (*on_sys_fdatasync_enter_t)(CPUState* cpu, target_ulong pc, uint32_t fd);
typedef void (*on_sys_fdatasync_return_t)(CPUState* cpu, target_ulong pc, uint32_t fd);
typedef void (*on_sys_fgetxattr_enter_t)(CPUState* cpu, target_ulong pc, int32_t fd, uint32_t name, uint32_t value, uint32_t size);
typedef void (*on_sys_fgetxattr_return_t)(CPUState* cpu, target_ulong pc, int32_t fd, uint32_t name, uint32_t value, uint32_t size);
typedef void (*on_sys_flistxattr_enter_t)(CPUState* cpu, target_ulong pc, int32_t fd, uint32_t list, uint32_t size);
typedef void (*on_sys_flistxattr_return_t)(CPUState* cpu, target_ulong pc, int32_t fd, uint32_t list, uint32_t size);
typedef void (*on_sys_flock_enter_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t cmd);
typedef void (*on_sys_flock_return_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t cmd);
typedef void (*on_sys_fremovexattr_enter_t)(CPUState* cpu, target_ulong pc, int32_t fd, uint32_t name);
typedef void (*on_sys_fremovexattr_return_t)(CPUState* cpu, target_ulong pc, int32_t fd, uint32_t name);
typedef void (*on_sys_fsetxattr_enter_t)(CPUState* cpu, target_ulong pc, int32_t fd, uint32_t name, uint32_t value, uint32_t size, int32_t flags);
typedef void (*on_sys_fsetxattr_return_t)(CPUState* cpu, target_ulong pc, int32_t fd, uint32_t name, uint32_t value, uint32_t size, int32_t flags);
typedef void (*on_sys_fstat64_enter_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t statbuf);
typedef void (*on_sys_fstat64_return_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t statbuf);
typedef void (*on_sys_fstatat64_enter_t)(CPUState* cpu, target_ulong pc, int32_t dfd, uint32_t filename, uint32_t statbuf, int32_t flag);
typedef void (*on_sys_fstatat64_return_t)(CPUState* cpu, target_ulong pc, int32_t dfd, uint32_t filename, uint32_t statbuf, int32_t flag);
typedef void (*on_sys_fstatfs_enter_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t buf);
typedef void (*on_sys_fstatfs_return_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t buf);
typedef void (*on_sys_fstatfs64_enter_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t sz, uint32_t buf);
typedef void (*on_sys_fstatfs64_return_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t sz, uint32_t buf);
typedef void (*on_sys_fsync_enter_t)(CPUState* cpu, target_ulong pc, uint32_t fd);
typedef void (*on_sys_fsync_return_t)(CPUState* cpu, target_ulong pc, uint32_t fd);
typedef void (*on_sys_ftruncate_enter_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t length);
typedef void (*on_sys_ftruncate_return_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t length);
typedef void (*on_sys_ftruncate64_enter_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint64_t length);
typedef void (*on_sys_ftruncate64_return_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint64_t length);
typedef void (*on_sys_futex_enter_t)(CPUState* cpu, target_ulong pc, uint32_t uaddr, int32_t op, uint32_t val, uint32_t utime, uint32_t uaddr2, uint32_t val3);
typedef void (*on_sys_futex_return_t)(CPUState* cpu, target_ulong pc, uint32_t uaddr, int32_t op, uint32_t val, uint32_t utime, uint32_t uaddr2, uint32_t val3);
typedef void (*on_sys_futimesat_enter_t)(CPUState* cpu, target_ulong pc, int32_t dfd, uint32_t filename, uint32_t utimes);
typedef void (*on_sys_futimesat_return_t)(CPUState* cpu, target_ulong pc, int32_t dfd, uint32_t filename, uint32_t utimes);
typedef void (*on_sys_get_mempolicy_enter_t)(CPUState* cpu, target_ulong pc, uint32_t policy, uint32_t nmask, uint32_t maxnode, uint32_t addr, uint32_t flags);
typedef void (*on_sys_get_mempolicy_return_t)(CPUState* cpu, target_ulong pc, uint32_t policy, uint32_t nmask, uint32_t maxnode, uint32_t addr, uint32_t flags);
typedef void (*on_sys_get_robust_list_enter_t)(CPUState* cpu, target_ulong pc, int32_t pid, uint32_t head_ptr, uint32_t len_ptr);
typedef void (*on_sys_get_robust_list_return_t)(CPUState* cpu, target_ulong pc, int32_t pid, uint32_t head_ptr, uint32_t len_ptr);
typedef void (*on_sys_getcpu_enter_t)(CPUState* cpu, target_ulong pc, uint32_t _cpu, uint32_t node, uint32_t cache);
typedef void (*on_sys_getcpu_return_t)(CPUState* cpu, target_ulong pc, uint32_t _cpu, uint32_t node, uint32_t cache);
typedef void (*on_sys_getcwd_enter_t)(CPUState* cpu, target_ulong pc, uint32_t buf, uint32_t size);
typedef void (*on_sys_getcwd_return_t)(CPUState* cpu, target_ulong pc, uint32_t buf, uint32_t size);
typedef void (*on_sys_getdents_enter_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t dirent, uint32_t count);
typedef void (*on_sys_getdents_return_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t dirent, uint32_t count);
typedef void (*on_sys_getdents64_enter_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t dirent, uint32_t count);
typedef void (*on_sys_getdents64_return_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t dirent, uint32_t count);
typedef void (*on_sys_getegid_enter_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_sys_getegid_return_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_sys_getegid16_enter_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_sys_getegid16_return_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_sys_geteuid_enter_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_sys_geteuid_return_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_sys_geteuid16_enter_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_sys_geteuid16_return_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_sys_getgid_enter_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_sys_getgid_return_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_sys_getgid16_enter_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_sys_getgid16_return_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_sys_getgroups_enter_t)(CPUState* cpu, target_ulong pc, int32_t gidsetsize, uint32_t grouplist);
typedef void (*on_sys_getgroups_return_t)(CPUState* cpu, target_ulong pc, int32_t gidsetsize, uint32_t grouplist);
typedef void (*on_sys_getgroups16_enter_t)(CPUState* cpu, target_ulong pc, int32_t gidsetsize, uint32_t grouplist);
typedef void (*on_sys_getgroups16_return_t)(CPUState* cpu, target_ulong pc, int32_t gidsetsize, uint32_t grouplist);
typedef void (*on_sys_getitimer_enter_t)(CPUState* cpu, target_ulong pc, int32_t which, uint32_t value);
typedef void (*on_sys_getitimer_return_t)(CPUState* cpu, target_ulong pc, int32_t which, uint32_t value);
typedef void (*on_sys_getpeername_enter_t)(CPUState* cpu, target_ulong pc, int32_t arg0, uint32_t arg1, uint32_t arg2);
typedef void (*on_sys_getpeername_return_t)(CPUState* cpu, target_ulong pc, int32_t arg0, uint32_t arg1, uint32_t arg2);
typedef void (*on_sys_getpgid_enter_t)(CPUState* cpu, target_ulong pc, uint32_t pid);
typedef void (*on_sys_getpgid_return_t)(CPUState* cpu, target_ulong pc, uint32_t pid);
typedef void (*on_sys_getpgrp_enter_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_sys_getpgrp_return_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_sys_getpid_enter_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_sys_getpid_return_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_sys_getppid_enter_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_sys_getppid_return_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_sys_getpriority_enter_t)(CPUState* cpu, target_ulong pc, int32_t which, int32_t who);
typedef void (*on_sys_getpriority_return_t)(CPUState* cpu, target_ulong pc, int32_t which, int32_t who);
typedef void (*on_sys_getresgid_enter_t)(CPUState* cpu, target_ulong pc, uint32_t rgid, uint32_t egid, uint32_t sgid);
typedef void (*on_sys_getresgid_return_t)(CPUState* cpu, target_ulong pc, uint32_t rgid, uint32_t egid, uint32_t sgid);
typedef void (*on_sys_getresgid16_enter_t)(CPUState* cpu, target_ulong pc, uint32_t rgid, uint32_t egid, uint32_t sgid);
typedef void (*on_sys_getresgid16_return_t)(CPUState* cpu, target_ulong pc, uint32_t rgid, uint32_t egid, uint32_t sgid);
typedef void (*on_sys_getresuid_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ruid, uint32_t euid, uint32_t suid);
typedef void (*on_sys_getresuid_return_t)(CPUState* cpu, target_ulong pc, uint32_t ruid, uint32_t euid, uint32_t suid);
typedef void (*on_sys_getresuid16_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ruid, uint32_t euid, uint32_t suid);
typedef void (*on_sys_getresuid16_return_t)(CPUState* cpu, target_ulong pc, uint32_t ruid, uint32_t euid, uint32_t suid);
typedef void (*on_sys_getrlimit_enter_t)(CPUState* cpu, target_ulong pc, uint32_t resource, uint32_t rlim);
typedef void (*on_sys_getrlimit_return_t)(CPUState* cpu, target_ulong pc, uint32_t resource, uint32_t rlim);
typedef void (*on_sys_getrusage_enter_t)(CPUState* cpu, target_ulong pc, int32_t who, uint32_t ru);
typedef void (*on_sys_getrusage_return_t)(CPUState* cpu, target_ulong pc, int32_t who, uint32_t ru);
typedef void (*on_sys_getsid_enter_t)(CPUState* cpu, target_ulong pc, uint32_t pid);
typedef void (*on_sys_getsid_return_t)(CPUState* cpu, target_ulong pc, uint32_t pid);
typedef void (*on_sys_getsockname_enter_t)(CPUState* cpu, target_ulong pc, int32_t arg0, uint32_t arg1, uint32_t arg2);
typedef void (*on_sys_getsockname_return_t)(CPUState* cpu, target_ulong pc, int32_t arg0, uint32_t arg1, uint32_t arg2);
typedef void (*on_sys_getsockopt_enter_t)(CPUState* cpu, target_ulong pc, int32_t fd, int32_t level, int32_t optname, uint32_t optval, uint32_t optlen);
typedef void (*on_sys_getsockopt_return_t)(CPUState* cpu, target_ulong pc, int32_t fd, int32_t level, int32_t optname, uint32_t optval, uint32_t optlen);
typedef void (*on_sys_gettid_enter_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_sys_gettid_return_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_sys_gettimeofday_enter_t)(CPUState* cpu, target_ulong pc, uint32_t tv, uint32_t tz);
typedef void (*on_sys_gettimeofday_return_t)(CPUState* cpu, target_ulong pc, uint32_t tv, uint32_t tz);
typedef void (*on_sys_getuid_enter_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_sys_getuid_return_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_sys_getuid16_enter_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_sys_getuid16_return_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_sys_getxattr_enter_t)(CPUState* cpu, target_ulong pc, uint32_t path, uint32_t name, uint32_t value, uint32_t size);
typedef void (*on_sys_getxattr_return_t)(CPUState* cpu, target_ulong pc, uint32_t path, uint32_t name, uint32_t value, uint32_t size);
typedef void (*on_sys_init_module_enter_t)(CPUState* cpu, target_ulong pc, uint32_t umod, uint32_t len, uint32_t uargs);
typedef void (*on_sys_init_module_return_t)(CPUState* cpu, target_ulong pc, uint32_t umod, uint32_t len, uint32_t uargs);
typedef void (*on_sys_inotify_add_watch_enter_t)(CPUState* cpu, target_ulong pc, int32_t fd, uint32_t path, uint32_t mask);
typedef void (*on_sys_inotify_add_watch_return_t)(CPUState* cpu, target_ulong pc, int32_t fd, uint32_t path, uint32_t mask);
typedef void (*on_sys_inotify_init_enter_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_sys_inotify_init_return_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_sys_inotify_init1_enter_t)(CPUState* cpu, target_ulong pc, int32_t flags);
typedef void (*on_sys_inotify_init1_return_t)(CPUState* cpu, target_ulong pc, int32_t flags);
typedef void (*on_sys_inotify_rm_watch_enter_t)(CPUState* cpu, target_ulong pc, int32_t fd, int32_t wd);
typedef void (*on_sys_inotify_rm_watch_return_t)(CPUState* cpu, target_ulong pc, int32_t fd, int32_t wd);
typedef void (*on_sys_io_cancel_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ctx_id, uint32_t iocb, uint32_t result);
typedef void (*on_sys_io_cancel_return_t)(CPUState* cpu, target_ulong pc, uint32_t ctx_id, uint32_t iocb, uint32_t result);
typedef void (*on_sys_io_destroy_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ctx);
typedef void (*on_sys_io_destroy_return_t)(CPUState* cpu, target_ulong pc, uint32_t ctx);
typedef void (*on_sys_io_getevents_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ctx_id, int32_t min_nr, int32_t nr, uint32_t events, uint32_t timeout);
typedef void (*on_sys_io_getevents_return_t)(CPUState* cpu, target_ulong pc, uint32_t ctx_id, int32_t min_nr, int32_t nr, uint32_t events, uint32_t timeout);
typedef void (*on_sys_io_setup_enter_t)(CPUState* cpu, target_ulong pc, uint32_t nr_reqs, uint32_t ctx);
typedef void (*on_sys_io_setup_return_t)(CPUState* cpu, target_ulong pc, uint32_t nr_reqs, uint32_t ctx);
typedef void (*on_sys_io_submit_enter_t)(CPUState* cpu, target_ulong pc, uint32_t arg0, int32_t arg1, uint32_t arg2);
typedef void (*on_sys_io_submit_return_t)(CPUState* cpu, target_ulong pc, uint32_t arg0, int32_t arg1, uint32_t arg2);
typedef void (*on_sys_ioctl_enter_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t cmd, uint32_t arg);
typedef void (*on_sys_ioctl_return_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t cmd, uint32_t arg);
typedef void (*on_sys_ioprio_get_enter_t)(CPUState* cpu, target_ulong pc, int32_t which, int32_t who);
typedef void (*on_sys_ioprio_get_return_t)(CPUState* cpu, target_ulong pc, int32_t which, int32_t who);
typedef void (*on_sys_ioprio_set_enter_t)(CPUState* cpu, target_ulong pc, int32_t which, int32_t who, int32_t ioprio);
typedef void (*on_sys_ioprio_set_return_t)(CPUState* cpu, target_ulong pc, int32_t which, int32_t who, int32_t ioprio);
typedef void (*on_sys_kexec_load_enter_t)(CPUState* cpu, target_ulong pc, uint32_t entry, uint32_t nr_segments, uint32_t segments, uint32_t flags);
typedef void (*on_sys_kexec_load_return_t)(CPUState* cpu, target_ulong pc, uint32_t entry, uint32_t nr_segments, uint32_t segments, uint32_t flags);
typedef void (*on_sys_keyctl_enter_t)(CPUState* cpu, target_ulong pc, int32_t cmd, uint32_t arg2, uint32_t arg3, uint32_t arg4, uint32_t arg5);
typedef void (*on_sys_keyctl_return_t)(CPUState* cpu, target_ulong pc, int32_t cmd, uint32_t arg2, uint32_t arg3, uint32_t arg4, uint32_t arg5);
typedef void (*on_sys_kill_enter_t)(CPUState* cpu, target_ulong pc, int32_t pid, int32_t sig);
typedef void (*on_sys_kill_return_t)(CPUState* cpu, target_ulong pc, int32_t pid, int32_t sig);
typedef void (*on_sys_lchown_enter_t)(CPUState* cpu, target_ulong pc, uint32_t filename, uint32_t user, uint32_t group);
typedef void (*on_sys_lchown_return_t)(CPUState* cpu, target_ulong pc, uint32_t filename, uint32_t user, uint32_t group);
typedef void (*on_sys_lchown16_enter_t)(CPUState* cpu, target_ulong pc, uint32_t filename, uint32_t user, uint32_t group);
typedef void (*on_sys_lchown16_return_t)(CPUState* cpu, target_ulong pc, uint32_t filename, uint32_t user, uint32_t group);
typedef void (*on_sys_lgetxattr_enter_t)(CPUState* cpu, target_ulong pc, uint32_t path, uint32_t name, uint32_t value, uint32_t size);
typedef void (*on_sys_lgetxattr_return_t)(CPUState* cpu, target_ulong pc, uint32_t path, uint32_t name, uint32_t value, uint32_t size);
typedef void (*on_sys_link_enter_t)(CPUState* cpu, target_ulong pc, uint32_t oldname, uint32_t newname);
typedef void (*on_sys_link_return_t)(CPUState* cpu, target_ulong pc, uint32_t oldname, uint32_t newname);
typedef void (*on_sys_linkat_enter_t)(CPUState* cpu, target_ulong pc, int32_t olddfd, uint32_t oldname, int32_t newdfd, uint32_t newname, int32_t flags);
typedef void (*on_sys_linkat_return_t)(CPUState* cpu, target_ulong pc, int32_t olddfd, uint32_t oldname, int32_t newdfd, uint32_t newname, int32_t flags);
typedef void (*on_sys_listen_enter_t)(CPUState* cpu, target_ulong pc, int32_t arg0, int32_t arg1);
typedef void (*on_sys_listen_return_t)(CPUState* cpu, target_ulong pc, int32_t arg0, int32_t arg1);
typedef void (*on_sys_listxattr_enter_t)(CPUState* cpu, target_ulong pc, uint32_t path, uint32_t list, uint32_t size);
typedef void (*on_sys_listxattr_return_t)(CPUState* cpu, target_ulong pc, uint32_t path, uint32_t list, uint32_t size);
typedef void (*on_sys_llistxattr_enter_t)(CPUState* cpu, target_ulong pc, uint32_t path, uint32_t list, uint32_t size);
typedef void (*on_sys_llistxattr_return_t)(CPUState* cpu, target_ulong pc, uint32_t path, uint32_t list, uint32_t size);
typedef void (*on_sys_llseek_enter_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t offset_high, uint32_t offset_low, uint32_t result, uint32_t origin);
typedef void (*on_sys_llseek_return_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t offset_high, uint32_t offset_low, uint32_t result, uint32_t origin);
typedef void (*on_sys_lookup_dcookie_enter_t)(CPUState* cpu, target_ulong pc, uint64_t cookie64, uint32_t buf, uint32_t len);
typedef void (*on_sys_lookup_dcookie_return_t)(CPUState* cpu, target_ulong pc, uint64_t cookie64, uint32_t buf, uint32_t len);
typedef void (*on_sys_lremovexattr_enter_t)(CPUState* cpu, target_ulong pc, uint32_t path, uint32_t name);
typedef void (*on_sys_lremovexattr_return_t)(CPUState* cpu, target_ulong pc, uint32_t path, uint32_t name);
typedef void (*on_sys_lseek_enter_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t offset, uint32_t origin);
typedef void (*on_sys_lseek_return_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t offset, uint32_t origin);
typedef void (*on_sys_lsetxattr_enter_t)(CPUState* cpu, target_ulong pc, uint32_t path, uint32_t name, uint32_t value, uint32_t size, int32_t flags);
typedef void (*on_sys_lsetxattr_return_t)(CPUState* cpu, target_ulong pc, uint32_t path, uint32_t name, uint32_t value, uint32_t size, int32_t flags);
typedef void (*on_sys_lstat64_enter_t)(CPUState* cpu, target_ulong pc, uint32_t filename, uint32_t statbuf);
typedef void (*on_sys_lstat64_return_t)(CPUState* cpu, target_ulong pc, uint32_t filename, uint32_t statbuf);
typedef void (*on_sys_madvise_enter_t)(CPUState* cpu, target_ulong pc, uint32_t start, uint32_t len, int32_t behavior);
typedef void (*on_sys_madvise_return_t)(CPUState* cpu, target_ulong pc, uint32_t start, uint32_t len, int32_t behavior);
typedef void (*on_sys_mbind_enter_t)(CPUState* cpu, target_ulong pc, uint32_t start, uint32_t len, uint32_t mode, uint32_t nmask, uint32_t maxnode, uint32_t flags);
typedef void (*on_sys_mbind_return_t)(CPUState* cpu, target_ulong pc, uint32_t start, uint32_t len, uint32_t mode, uint32_t nmask, uint32_t maxnode, uint32_t flags);
typedef void (*on_sys_mincore_enter_t)(CPUState* cpu, target_ulong pc, uint32_t start, uint32_t len, uint32_t vec);
typedef void (*on_sys_mincore_return_t)(CPUState* cpu, target_ulong pc, uint32_t start, uint32_t len, uint32_t vec);
typedef void (*on_sys_mkdir_enter_t)(CPUState* cpu, target_ulong pc, uint32_t pathname, int32_t mode);
typedef void (*on_sys_mkdir_return_t)(CPUState* cpu, target_ulong pc, uint32_t pathname, int32_t mode);
typedef void (*on_sys_mkdirat_enter_t)(CPUState* cpu, target_ulong pc, int32_t dfd, uint32_t pathname, int32_t mode);
typedef void (*on_sys_mkdirat_return_t)(CPUState* cpu, target_ulong pc, int32_t dfd, uint32_t pathname, int32_t mode);
typedef void (*on_sys_mknod_enter_t)(CPUState* cpu, target_ulong pc, uint32_t filename, int32_t mode, uint32_t dev);
typedef void (*on_sys_mknod_return_t)(CPUState* cpu, target_ulong pc, uint32_t filename, int32_t mode, uint32_t dev);
typedef void (*on_sys_mknodat_enter_t)(CPUState* cpu, target_ulong pc, int32_t dfd, uint32_t filename, int32_t mode, uint32_t dev);
typedef void (*on_sys_mknodat_return_t)(CPUState* cpu, target_ulong pc, int32_t dfd, uint32_t filename, int32_t mode, uint32_t dev);
typedef void (*on_sys_mlock_enter_t)(CPUState* cpu, target_ulong pc, uint32_t start, uint32_t len);
typedef void (*on_sys_mlock_return_t)(CPUState* cpu, target_ulong pc, uint32_t start, uint32_t len);
typedef void (*on_sys_mlockall_enter_t)(CPUState* cpu, target_ulong pc, int32_t flags);
typedef void (*on_sys_mlockall_return_t)(CPUState* cpu, target_ulong pc, int32_t flags);
typedef void (*on_sys_mount_enter_t)(CPUState* cpu, target_ulong pc, uint32_t dev_name, uint32_t dir_name, uint32_t type, uint32_t flags, uint32_t _data);
typedef void (*on_sys_mount_return_t)(CPUState* cpu, target_ulong pc, uint32_t dev_name, uint32_t dir_name, uint32_t type, uint32_t flags, uint32_t _data);
typedef void (*on_sys_move_pages_enter_t)(CPUState* cpu, target_ulong pc, uint32_t pid, uint32_t nr_pages, uint32_t pages, uint32_t nodes, uint32_t status, int32_t flags);
typedef void (*on_sys_move_pages_return_t)(CPUState* cpu, target_ulong pc, uint32_t pid, uint32_t nr_pages, uint32_t pages, uint32_t nodes, uint32_t status, int32_t flags);
typedef void (*on_sys_mprotect_enter_t)(CPUState* cpu, target_ulong pc, uint32_t start, uint32_t len, uint32_t prot);
typedef void (*on_sys_mprotect_return_t)(CPUState* cpu, target_ulong pc, uint32_t start, uint32_t len, uint32_t prot);
typedef void (*on_sys_mq_getsetattr_enter_t)(CPUState* cpu, target_ulong pc, uint32_t mqdes, uint32_t mqstat, uint32_t omqstat);
typedef void (*on_sys_mq_getsetattr_return_t)(CPUState* cpu, target_ulong pc, uint32_t mqdes, uint32_t mqstat, uint32_t omqstat);
typedef void (*on_sys_mq_notify_enter_t)(CPUState* cpu, target_ulong pc, uint32_t mqdes, uint32_t notification);
typedef void (*on_sys_mq_notify_return_t)(CPUState* cpu, target_ulong pc, uint32_t mqdes, uint32_t notification);
typedef void (*on_sys_mq_open_enter_t)(CPUState* cpu, target_ulong pc, uint32_t name, int32_t oflag, uint32_t mode, uint32_t attr);
typedef void (*on_sys_mq_open_return_t)(CPUState* cpu, target_ulong pc, uint32_t name, int32_t oflag, uint32_t mode, uint32_t attr);
typedef void (*on_sys_mq_timedreceive_enter_t)(CPUState* cpu, target_ulong pc, uint32_t mqdes, uint32_t msg_ptr, uint32_t msg_len, uint32_t msg_prio, uint32_t abs_timeout);
typedef void (*on_sys_mq_timedreceive_return_t)(CPUState* cpu, target_ulong pc, uint32_t mqdes, uint32_t msg_ptr, uint32_t msg_len, uint32_t msg_prio, uint32_t abs_timeout);
typedef void (*on_sys_mq_timedsend_enter_t)(CPUState* cpu, target_ulong pc, uint32_t mqdes, uint32_t msg_ptr, uint32_t msg_len, uint32_t msg_prio, uint32_t abs_timeout);
typedef void (*on_sys_mq_timedsend_return_t)(CPUState* cpu, target_ulong pc, uint32_t mqdes, uint32_t msg_ptr, uint32_t msg_len, uint32_t msg_prio, uint32_t abs_timeout);
typedef void (*on_sys_mq_unlink_enter_t)(CPUState* cpu, target_ulong pc, uint32_t name);
typedef void (*on_sys_mq_unlink_return_t)(CPUState* cpu, target_ulong pc, uint32_t name);
typedef void (*on_sys_msgctl_enter_t)(CPUState* cpu, target_ulong pc, int32_t msqid, int32_t cmd, uint32_t buf);
typedef void (*on_sys_msgctl_return_t)(CPUState* cpu, target_ulong pc, int32_t msqid, int32_t cmd, uint32_t buf);
typedef void (*on_sys_msgget_enter_t)(CPUState* cpu, target_ulong pc, uint32_t key, int32_t msgflg);
typedef void (*on_sys_msgget_return_t)(CPUState* cpu, target_ulong pc, uint32_t key, int32_t msgflg);
typedef void (*on_sys_msgrcv_enter_t)(CPUState* cpu, target_ulong pc, int32_t msqid, uint32_t msgp, uint32_t msgsz, int32_t msgtyp, int32_t msgflg);
typedef void (*on_sys_msgrcv_return_t)(CPUState* cpu, target_ulong pc, int32_t msqid, uint32_t msgp, uint32_t msgsz, int32_t msgtyp, int32_t msgflg);
typedef void (*on_sys_msgsnd_enter_t)(CPUState* cpu, target_ulong pc, int32_t msqid, uint32_t msgp, uint32_t msgsz, int32_t msgflg);
typedef void (*on_sys_msgsnd_return_t)(CPUState* cpu, target_ulong pc, int32_t msqid, uint32_t msgp, uint32_t msgsz, int32_t msgflg);
typedef void (*on_sys_msync_enter_t)(CPUState* cpu, target_ulong pc, uint32_t start, uint32_t len, int32_t flags);
typedef void (*on_sys_msync_return_t)(CPUState* cpu, target_ulong pc, uint32_t start, uint32_t len, int32_t flags);
typedef void (*on_sys_munlock_enter_t)(CPUState* cpu, target_ulong pc, uint32_t start, uint32_t len);
typedef void (*on_sys_munlock_return_t)(CPUState* cpu, target_ulong pc, uint32_t start, uint32_t len);
typedef void (*on_sys_munlockall_enter_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_sys_munlockall_return_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_sys_munmap_enter_t)(CPUState* cpu, target_ulong pc, uint32_t addr, uint32_t len);
typedef void (*on_sys_munmap_return_t)(CPUState* cpu, target_ulong pc, uint32_t addr, uint32_t len);
typedef void (*on_sys_nanosleep_enter_t)(CPUState* cpu, target_ulong pc, uint32_t rqtp, uint32_t rmtp);
typedef void (*on_sys_nanosleep_return_t)(CPUState* cpu, target_ulong pc, uint32_t rqtp, uint32_t rmtp);
typedef void (*on_sys_newfstat_enter_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t statbuf);
typedef void (*on_sys_newfstat_return_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t statbuf);
typedef void (*on_sys_newlstat_enter_t)(CPUState* cpu, target_ulong pc, uint32_t filename, uint32_t statbuf);
typedef void (*on_sys_newlstat_return_t)(CPUState* cpu, target_ulong pc, uint32_t filename, uint32_t statbuf);
typedef void (*on_sys_newstat_enter_t)(CPUState* cpu, target_ulong pc, uint32_t filename, uint32_t statbuf);
typedef void (*on_sys_newstat_return_t)(CPUState* cpu, target_ulong pc, uint32_t filename, uint32_t statbuf);
typedef void (*on_sys_newuname_enter_t)(CPUState* cpu, target_ulong pc, uint32_t name);
typedef void (*on_sys_newuname_return_t)(CPUState* cpu, target_ulong pc, uint32_t name);
typedef void (*on_sys_nfsservctl_enter_t)(CPUState* cpu, target_ulong pc, int32_t cmd, uint32_t arg, uint32_t res);
typedef void (*on_sys_nfsservctl_return_t)(CPUState* cpu, target_ulong pc, int32_t cmd, uint32_t arg, uint32_t res);
typedef void (*on_sys_nice_enter_t)(CPUState* cpu, target_ulong pc, int32_t increment);
typedef void (*on_sys_nice_return_t)(CPUState* cpu, target_ulong pc, int32_t increment);
typedef void (*on_sys_open_enter_t)(CPUState* cpu, target_ulong pc, uint32_t filename, int32_t flags, int32_t mode);
typedef void (*on_sys_open_return_t)(CPUState* cpu, target_ulong pc, uint32_t filename, int32_t flags, int32_t mode);
typedef void (*on_sys_openat_enter_t)(CPUState* cpu, target_ulong pc, int32_t dfd, uint32_t filename, int32_t flags, int32_t mode);
typedef void (*on_sys_openat_return_t)(CPUState* cpu, target_ulong pc, int32_t dfd, uint32_t filename, int32_t flags, int32_t mode);
typedef void (*on_sys_pause_enter_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_sys_pause_return_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_sys_pciconfig_iobase_enter_t)(CPUState* cpu, target_ulong pc, int32_t which, uint32_t bus, uint32_t devfn);
typedef void (*on_sys_pciconfig_iobase_return_t)(CPUState* cpu, target_ulong pc, int32_t which, uint32_t bus, uint32_t devfn);
typedef void (*on_sys_pciconfig_read_enter_t)(CPUState* cpu, target_ulong pc, uint32_t bus, uint32_t dfn, uint32_t off, uint32_t len, uint32_t buf);
typedef void (*on_sys_pciconfig_read_return_t)(CPUState* cpu, target_ulong pc, uint32_t bus, uint32_t dfn, uint32_t off, uint32_t len, uint32_t buf);
typedef void (*on_sys_pciconfig_write_enter_t)(CPUState* cpu, target_ulong pc, uint32_t bus, uint32_t dfn, uint32_t off, uint32_t len, uint32_t buf);
typedef void (*on_sys_pciconfig_write_return_t)(CPUState* cpu, target_ulong pc, uint32_t bus, uint32_t dfn, uint32_t off, uint32_t len, uint32_t buf);
typedef void (*on_sys_personality_enter_t)(CPUState* cpu, target_ulong pc, int32_t personality);
typedef void (*on_sys_personality_return_t)(CPUState* cpu, target_ulong pc, int32_t personality);
typedef void (*on_sys_pipe_enter_t)(CPUState* cpu, target_ulong pc, uint32_t arg0);
typedef void (*on_sys_pipe_return_t)(CPUState* cpu, target_ulong pc, uint32_t arg0);
typedef void (*on_sys_pipe2_enter_t)(CPUState* cpu, target_ulong pc, uint32_t arg0, int32_t arg1);
typedef void (*on_sys_pipe2_return_t)(CPUState* cpu, target_ulong pc, uint32_t arg0, int32_t arg1);
typedef void (*on_sys_pivot_root_enter_t)(CPUState* cpu, target_ulong pc, uint32_t new_root, uint32_t put_old);
typedef void (*on_sys_pivot_root_return_t)(CPUState* cpu, target_ulong pc, uint32_t new_root, uint32_t put_old);
typedef void (*on_sys_poll_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ufds, uint32_t nfds, int32_t timeout);
typedef void (*on_sys_poll_return_t)(CPUState* cpu, target_ulong pc, uint32_t ufds, uint32_t nfds, int32_t timeout);
typedef void (*on_sys_prctl_enter_t)(CPUState* cpu, target_ulong pc, int32_t option, uint32_t arg2, uint32_t arg3, uint32_t arg4, uint32_t arg5);
typedef void (*on_sys_prctl_return_t)(CPUState* cpu, target_ulong pc, int32_t option, uint32_t arg2, uint32_t arg3, uint32_t arg4, uint32_t arg5);
typedef void (*on_sys_pread64_enter_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t buf, uint32_t count, uint64_t pos);
typedef void (*on_sys_pread64_return_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t buf, uint32_t count, uint64_t pos);
typedef void (*on_sys_ptrace_enter_t)(CPUState* cpu, target_ulong pc, int32_t request, int32_t pid, int32_t addr, int32_t _data);
typedef void (*on_sys_ptrace_return_t)(CPUState* cpu, target_ulong pc, int32_t request, int32_t pid, int32_t addr, int32_t _data);
typedef void (*on_sys_pwrite64_enter_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t buf, uint32_t count, uint64_t pos);
typedef void (*on_sys_pwrite64_return_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t buf, uint32_t count, uint64_t pos);
typedef void (*on_sys_quotactl_enter_t)(CPUState* cpu, target_ulong pc, uint32_t cmd, uint32_t special, uint32_t id, uint32_t addr);
typedef void (*on_sys_quotactl_return_t)(CPUState* cpu, target_ulong pc, uint32_t cmd, uint32_t special, uint32_t id, uint32_t addr);
typedef void (*on_sys_read_enter_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t buf, uint32_t count);
typedef void (*on_sys_read_return_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t buf, uint32_t count);
typedef void (*on_sys_readahead_enter_t)(CPUState* cpu, target_ulong pc, int32_t fd, uint64_t offset, uint32_t count);
typedef void (*on_sys_readahead_return_t)(CPUState* cpu, target_ulong pc, int32_t fd, uint64_t offset, uint32_t count);
typedef void (*on_sys_readlink_enter_t)(CPUState* cpu, target_ulong pc, uint32_t path, uint32_t buf, int32_t bufsiz);
typedef void (*on_sys_readlink_return_t)(CPUState* cpu, target_ulong pc, uint32_t path, uint32_t buf, int32_t bufsiz);
typedef void (*on_sys_readlinkat_enter_t)(CPUState* cpu, target_ulong pc, int32_t dfd, uint32_t path, uint32_t buf, int32_t bufsiz);
typedef void (*on_sys_readlinkat_return_t)(CPUState* cpu, target_ulong pc, int32_t dfd, uint32_t path, uint32_t buf, int32_t bufsiz);
typedef void (*on_sys_readv_enter_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t vec, uint32_t vlen);
typedef void (*on_sys_readv_return_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t vec, uint32_t vlen);
typedef void (*on_sys_reboot_enter_t)(CPUState* cpu, target_ulong pc, int32_t magic1, int32_t magic2, uint32_t cmd, uint32_t arg);
typedef void (*on_sys_reboot_return_t)(CPUState* cpu, target_ulong pc, int32_t magic1, int32_t magic2, uint32_t cmd, uint32_t arg);
typedef void (*on_sys_recv_enter_t)(CPUState* cpu, target_ulong pc, int32_t arg0, uint32_t arg1, uint32_t arg2, uint32_t arg3);
typedef void (*on_sys_recv_return_t)(CPUState* cpu, target_ulong pc, int32_t arg0, uint32_t arg1, uint32_t arg2, uint32_t arg3);
typedef void (*on_sys_recvfrom_enter_t)(CPUState* cpu, target_ulong pc, int32_t arg0, uint32_t arg1, uint32_t arg2, uint32_t arg3, uint32_t arg4, uint32_t arg5);
typedef void (*on_sys_recvfrom_return_t)(CPUState* cpu, target_ulong pc, int32_t arg0, uint32_t arg1, uint32_t arg2, uint32_t arg3, uint32_t arg4, uint32_t arg5);
typedef void (*on_sys_recvmsg_enter_t)(CPUState* cpu, target_ulong pc, int32_t fd, uint32_t msg, uint32_t flags);
typedef void (*on_sys_recvmsg_return_t)(CPUState* cpu, target_ulong pc, int32_t fd, uint32_t msg, uint32_t flags);
typedef void (*on_sys_remap_file_pages_enter_t)(CPUState* cpu, target_ulong pc, uint32_t start, uint32_t size, uint32_t prot, uint32_t pgoff, uint32_t flags);
typedef void (*on_sys_remap_file_pages_return_t)(CPUState* cpu, target_ulong pc, uint32_t start, uint32_t size, uint32_t prot, uint32_t pgoff, uint32_t flags);
typedef void (*on_sys_removexattr_enter_t)(CPUState* cpu, target_ulong pc, uint32_t path, uint32_t name);
typedef void (*on_sys_removexattr_return_t)(CPUState* cpu, target_ulong pc, uint32_t path, uint32_t name);
typedef void (*on_sys_rename_enter_t)(CPUState* cpu, target_ulong pc, uint32_t oldname, uint32_t newname);
typedef void (*on_sys_rename_return_t)(CPUState* cpu, target_ulong pc, uint32_t oldname, uint32_t newname);
typedef void (*on_sys_renameat_enter_t)(CPUState* cpu, target_ulong pc, int32_t olddfd, uint32_t oldname, int32_t newdfd, uint32_t newname);
typedef void (*on_sys_renameat_return_t)(CPUState* cpu, target_ulong pc, int32_t olddfd, uint32_t oldname, int32_t newdfd, uint32_t newname);
typedef void (*on_sys_request_key_enter_t)(CPUState* cpu, target_ulong pc, uint32_t _type, uint32_t _description, uint32_t _callout_info, uint32_t destringid);
typedef void (*on_sys_request_key_return_t)(CPUState* cpu, target_ulong pc, uint32_t _type, uint32_t _description, uint32_t _callout_info, uint32_t destringid);
typedef void (*on_sys_restart_syscall_enter_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_sys_restart_syscall_return_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_sys_rmdir_enter_t)(CPUState* cpu, target_ulong pc, uint32_t pathname);
typedef void (*on_sys_rmdir_return_t)(CPUState* cpu, target_ulong pc, uint32_t pathname);
typedef void (*on_sys_rt_sigpending_enter_t)(CPUState* cpu, target_ulong pc, uint32_t set, uint32_t sigsetsize);
typedef void (*on_sys_rt_sigpending_return_t)(CPUState* cpu, target_ulong pc, uint32_t set, uint32_t sigsetsize);
typedef void (*on_sys_rt_sigprocmask_enter_t)(CPUState* cpu, target_ulong pc, int32_t how, uint32_t set, uint32_t oset, uint32_t sigsetsize);
typedef void (*on_sys_rt_sigprocmask_return_t)(CPUState* cpu, target_ulong pc, int32_t how, uint32_t set, uint32_t oset, uint32_t sigsetsize);
typedef void (*on_sys_rt_sigqueueinfo_enter_t)(CPUState* cpu, target_ulong pc, int32_t pid, int32_t sig, uint32_t uinfo);
typedef void (*on_sys_rt_sigqueueinfo_return_t)(CPUState* cpu, target_ulong pc, int32_t pid, int32_t sig, uint32_t uinfo);
typedef void (*on_sys_rt_sigsuspend_enter_t)(CPUState* cpu, target_ulong pc, uint32_t unewset, uint32_t sigsetsize);
typedef void (*on_sys_rt_sigsuspend_return_t)(CPUState* cpu, target_ulong pc, uint32_t unewset, uint32_t sigsetsize);
typedef void (*on_sys_rt_sigtimedwait_enter_t)(CPUState* cpu, target_ulong pc, uint32_t uthese, uint32_t uinfo, uint32_t uts, uint32_t sigsetsize);
typedef void (*on_sys_rt_sigtimedwait_return_t)(CPUState* cpu, target_ulong pc, uint32_t uthese, uint32_t uinfo, uint32_t uts, uint32_t sigsetsize);
typedef void (*on_sys_sched_get_priority_max_enter_t)(CPUState* cpu, target_ulong pc, int32_t policy);
typedef void (*on_sys_sched_get_priority_max_return_t)(CPUState* cpu, target_ulong pc, int32_t policy);
typedef void (*on_sys_sched_get_priority_min_enter_t)(CPUState* cpu, target_ulong pc, int32_t policy);
typedef void (*on_sys_sched_get_priority_min_return_t)(CPUState* cpu, target_ulong pc, int32_t policy);
typedef void (*on_sys_sched_getaffinity_enter_t)(CPUState* cpu, target_ulong pc, uint32_t pid, uint32_t len, uint32_t user_mask_ptr);
typedef void (*on_sys_sched_getaffinity_return_t)(CPUState* cpu, target_ulong pc, uint32_t pid, uint32_t len, uint32_t user_mask_ptr);
typedef void (*on_sys_sched_getparam_enter_t)(CPUState* cpu, target_ulong pc, uint32_t pid, uint32_t param);
typedef void (*on_sys_sched_getparam_return_t)(CPUState* cpu, target_ulong pc, uint32_t pid, uint32_t param);
typedef void (*on_sys_sched_getscheduler_enter_t)(CPUState* cpu, target_ulong pc, uint32_t pid);
typedef void (*on_sys_sched_getscheduler_return_t)(CPUState* cpu, target_ulong pc, uint32_t pid);
typedef void (*on_sys_sched_rr_get_interval_enter_t)(CPUState* cpu, target_ulong pc, uint32_t pid, uint32_t interval);
typedef void (*on_sys_sched_rr_get_interval_return_t)(CPUState* cpu, target_ulong pc, uint32_t pid, uint32_t interval);
typedef void (*on_sys_sched_setaffinity_enter_t)(CPUState* cpu, target_ulong pc, uint32_t pid, uint32_t len, uint32_t user_mask_ptr);
typedef void (*on_sys_sched_setaffinity_return_t)(CPUState* cpu, target_ulong pc, uint32_t pid, uint32_t len, uint32_t user_mask_ptr);
typedef void (*on_sys_sched_setparam_enter_t)(CPUState* cpu, target_ulong pc, uint32_t pid, uint32_t param);
typedef void (*on_sys_sched_setparam_return_t)(CPUState* cpu, target_ulong pc, uint32_t pid, uint32_t param);
typedef void (*on_sys_sched_setscheduler_enter_t)(CPUState* cpu, target_ulong pc, uint32_t pid, int32_t policy, uint32_t param);
typedef void (*on_sys_sched_setscheduler_return_t)(CPUState* cpu, target_ulong pc, uint32_t pid, int32_t policy, uint32_t param);
typedef void (*on_sys_sched_yield_enter_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_sys_sched_yield_return_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_sys_select_enter_t)(CPUState* cpu, target_ulong pc, int32_t n, uint32_t inp, uint32_t outp, uint32_t exp, uint32_t tvp);
typedef void (*on_sys_select_return_t)(CPUState* cpu, target_ulong pc, int32_t n, uint32_t inp, uint32_t outp, uint32_t exp, uint32_t tvp);
typedef void (*on_sys_semctl_enter_t)(CPUState* cpu, target_ulong pc, int32_t semid, int32_t semnum, int32_t cmd, uint32_t arg);
typedef void (*on_sys_semctl_return_t)(CPUState* cpu, target_ulong pc, int32_t semid, int32_t semnum, int32_t cmd, uint32_t arg);
typedef void (*on_sys_semget_enter_t)(CPUState* cpu, target_ulong pc, uint32_t key, int32_t nsems, int32_t semflg);
typedef void (*on_sys_semget_return_t)(CPUState* cpu, target_ulong pc, uint32_t key, int32_t nsems, int32_t semflg);
typedef void (*on_sys_semop_enter_t)(CPUState* cpu, target_ulong pc, int32_t semid, uint32_t sops, uint32_t nsops);
typedef void (*on_sys_semop_return_t)(CPUState* cpu, target_ulong pc, int32_t semid, uint32_t sops, uint32_t nsops);
typedef void (*on_sys_semtimedop_enter_t)(CPUState* cpu, target_ulong pc, int32_t semid, uint32_t sops, uint32_t nsops, uint32_t timeout);
typedef void (*on_sys_semtimedop_return_t)(CPUState* cpu, target_ulong pc, int32_t semid, uint32_t sops, uint32_t nsops, uint32_t timeout);
typedef void (*on_sys_send_enter_t)(CPUState* cpu, target_ulong pc, int32_t arg0, uint32_t arg1, uint32_t arg2, uint32_t arg3);
typedef void (*on_sys_send_return_t)(CPUState* cpu, target_ulong pc, int32_t arg0, uint32_t arg1, uint32_t arg2, uint32_t arg3);
typedef void (*on_sys_sendfile_enter_t)(CPUState* cpu, target_ulong pc, int32_t out_fd, int32_t in_fd, uint32_t offset, uint32_t count);
typedef void (*on_sys_sendfile_return_t)(CPUState* cpu, target_ulong pc, int32_t out_fd, int32_t in_fd, uint32_t offset, uint32_t count);
typedef void (*on_sys_sendfile64_enter_t)(CPUState* cpu, target_ulong pc, int32_t out_fd, int32_t in_fd, uint32_t offset, uint32_t count);
typedef void (*on_sys_sendfile64_return_t)(CPUState* cpu, target_ulong pc, int32_t out_fd, int32_t in_fd, uint32_t offset, uint32_t count);
typedef void (*on_sys_sendmsg_enter_t)(CPUState* cpu, target_ulong pc, int32_t fd, uint32_t msg, uint32_t flags);
typedef void (*on_sys_sendmsg_return_t)(CPUState* cpu, target_ulong pc, int32_t fd, uint32_t msg, uint32_t flags);
typedef void (*on_sys_sendto_enter_t)(CPUState* cpu, target_ulong pc, int32_t arg0, uint32_t arg1, uint32_t arg2, uint32_t arg3, uint32_t arg4, int32_t arg5);
typedef void (*on_sys_sendto_return_t)(CPUState* cpu, target_ulong pc, int32_t arg0, uint32_t arg1, uint32_t arg2, uint32_t arg3, uint32_t arg4, int32_t arg5);
typedef void (*on_sys_set_mempolicy_enter_t)(CPUState* cpu, target_ulong pc, int32_t mode, uint32_t nmask, uint32_t maxnode);
typedef void (*on_sys_set_mempolicy_return_t)(CPUState* cpu, target_ulong pc, int32_t mode, uint32_t nmask, uint32_t maxnode);
typedef void (*on_sys_set_robust_list_enter_t)(CPUState* cpu, target_ulong pc, uint32_t head, uint32_t len);
typedef void (*on_sys_set_robust_list_return_t)(CPUState* cpu, target_ulong pc, uint32_t head, uint32_t len);
typedef void (*on_sys_set_tid_address_enter_t)(CPUState* cpu, target_ulong pc, uint32_t tidptr);
typedef void (*on_sys_set_tid_address_return_t)(CPUState* cpu, target_ulong pc, uint32_t tidptr);
typedef void (*on_sys_setdomainname_enter_t)(CPUState* cpu, target_ulong pc, uint32_t name, int32_t len);
typedef void (*on_sys_setdomainname_return_t)(CPUState* cpu, target_ulong pc, uint32_t name, int32_t len);
typedef void (*on_sys_setfsgid_enter_t)(CPUState* cpu, target_ulong pc, uint32_t gid);
typedef void (*on_sys_setfsgid_return_t)(CPUState* cpu, target_ulong pc, uint32_t gid);
typedef void (*on_sys_setfsgid16_enter_t)(CPUState* cpu, target_ulong pc, uint32_t gid);
typedef void (*on_sys_setfsgid16_return_t)(CPUState* cpu, target_ulong pc, uint32_t gid);
typedef void (*on_sys_setfsuid_enter_t)(CPUState* cpu, target_ulong pc, uint32_t uid);
typedef void (*on_sys_setfsuid_return_t)(CPUState* cpu, target_ulong pc, uint32_t uid);
typedef void (*on_sys_setfsuid16_enter_t)(CPUState* cpu, target_ulong pc, uint32_t uid);
typedef void (*on_sys_setfsuid16_return_t)(CPUState* cpu, target_ulong pc, uint32_t uid);
typedef void (*on_sys_setgid_enter_t)(CPUState* cpu, target_ulong pc, uint32_t gid);
typedef void (*on_sys_setgid_return_t)(CPUState* cpu, target_ulong pc, uint32_t gid);
typedef void (*on_sys_setgid16_enter_t)(CPUState* cpu, target_ulong pc, uint32_t gid);
typedef void (*on_sys_setgid16_return_t)(CPUState* cpu, target_ulong pc, uint32_t gid);
typedef void (*on_sys_setgroups_enter_t)(CPUState* cpu, target_ulong pc, int32_t gidsetsize, uint32_t grouplist);
typedef void (*on_sys_setgroups_return_t)(CPUState* cpu, target_ulong pc, int32_t gidsetsize, uint32_t grouplist);
typedef void (*on_sys_setgroups16_enter_t)(CPUState* cpu, target_ulong pc, int32_t gidsetsize, uint32_t grouplist);
typedef void (*on_sys_setgroups16_return_t)(CPUState* cpu, target_ulong pc, int32_t gidsetsize, uint32_t grouplist);
typedef void (*on_sys_sethostname_enter_t)(CPUState* cpu, target_ulong pc, uint32_t name, int32_t len);
typedef void (*on_sys_sethostname_return_t)(CPUState* cpu, target_ulong pc, uint32_t name, int32_t len);
typedef void (*on_sys_setitimer_enter_t)(CPUState* cpu, target_ulong pc, int32_t which, uint32_t value, uint32_t ovalue);
typedef void (*on_sys_setitimer_return_t)(CPUState* cpu, target_ulong pc, int32_t which, uint32_t value, uint32_t ovalue);
typedef void (*on_sys_setpgid_enter_t)(CPUState* cpu, target_ulong pc, uint32_t pid, uint32_t pgid);
typedef void (*on_sys_setpgid_return_t)(CPUState* cpu, target_ulong pc, uint32_t pid, uint32_t pgid);
typedef void (*on_sys_setpriority_enter_t)(CPUState* cpu, target_ulong pc, int32_t which, int32_t who, int32_t niceval);
typedef void (*on_sys_setpriority_return_t)(CPUState* cpu, target_ulong pc, int32_t which, int32_t who, int32_t niceval);
typedef void (*on_sys_setregid_enter_t)(CPUState* cpu, target_ulong pc, uint32_t rgid, uint32_t egid);
typedef void (*on_sys_setregid_return_t)(CPUState* cpu, target_ulong pc, uint32_t rgid, uint32_t egid);
typedef void (*on_sys_setregid16_enter_t)(CPUState* cpu, target_ulong pc, uint32_t rgid, uint32_t egid);
typedef void (*on_sys_setregid16_return_t)(CPUState* cpu, target_ulong pc, uint32_t rgid, uint32_t egid);
typedef void (*on_sys_setresgid_enter_t)(CPUState* cpu, target_ulong pc, uint32_t rgid, uint32_t egid, uint32_t sgid);
typedef void (*on_sys_setresgid_return_t)(CPUState* cpu, target_ulong pc, uint32_t rgid, uint32_t egid, uint32_t sgid);
typedef void (*on_sys_setresgid16_enter_t)(CPUState* cpu, target_ulong pc, uint32_t rgid, uint32_t egid, uint32_t sgid);
typedef void (*on_sys_setresgid16_return_t)(CPUState* cpu, target_ulong pc, uint32_t rgid, uint32_t egid, uint32_t sgid);
typedef void (*on_sys_setresuid_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ruid, uint32_t euid, uint32_t suid);
typedef void (*on_sys_setresuid_return_t)(CPUState* cpu, target_ulong pc, uint32_t ruid, uint32_t euid, uint32_t suid);
typedef void (*on_sys_setresuid16_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ruid, uint32_t euid, uint32_t suid);
typedef void (*on_sys_setresuid16_return_t)(CPUState* cpu, target_ulong pc, uint32_t ruid, uint32_t euid, uint32_t suid);
typedef void (*on_sys_setreuid_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ruid, uint32_t euid);
typedef void (*on_sys_setreuid_return_t)(CPUState* cpu, target_ulong pc, uint32_t ruid, uint32_t euid);
typedef void (*on_sys_setreuid16_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ruid, uint32_t euid);
typedef void (*on_sys_setreuid16_return_t)(CPUState* cpu, target_ulong pc, uint32_t ruid, uint32_t euid);
typedef void (*on_sys_setrlimit_enter_t)(CPUState* cpu, target_ulong pc, uint32_t resource, uint32_t rlim);
typedef void (*on_sys_setrlimit_return_t)(CPUState* cpu, target_ulong pc, uint32_t resource, uint32_t rlim);
typedef void (*on_sys_setsid_enter_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_sys_setsid_return_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_sys_setsockopt_enter_t)(CPUState* cpu, target_ulong pc, int32_t fd, int32_t level, int32_t optname, uint32_t optval, int32_t optlen);
typedef void (*on_sys_setsockopt_return_t)(CPUState* cpu, target_ulong pc, int32_t fd, int32_t level, int32_t optname, uint32_t optval, int32_t optlen);
typedef void (*on_sys_settimeofday_enter_t)(CPUState* cpu, target_ulong pc, uint32_t tv, uint32_t tz);
typedef void (*on_sys_settimeofday_return_t)(CPUState* cpu, target_ulong pc, uint32_t tv, uint32_t tz);
typedef void (*on_sys_setuid_enter_t)(CPUState* cpu, target_ulong pc, uint32_t uid);
typedef void (*on_sys_setuid_return_t)(CPUState* cpu, target_ulong pc, uint32_t uid);
typedef void (*on_sys_setuid16_enter_t)(CPUState* cpu, target_ulong pc, uint32_t uid);
typedef void (*on_sys_setuid16_return_t)(CPUState* cpu, target_ulong pc, uint32_t uid);
typedef void (*on_sys_setxattr_enter_t)(CPUState* cpu, target_ulong pc, uint32_t path, uint32_t name, uint32_t value, uint32_t size, int32_t flags);
typedef void (*on_sys_setxattr_return_t)(CPUState* cpu, target_ulong pc, uint32_t path, uint32_t name, uint32_t value, uint32_t size, int32_t flags);
typedef void (*on_sys_shmat_enter_t)(CPUState* cpu, target_ulong pc, int32_t shmid, uint32_t shmaddr, int32_t shmflg);
typedef void (*on_sys_shmat_return_t)(CPUState* cpu, target_ulong pc, int32_t shmid, uint32_t shmaddr, int32_t shmflg);
typedef void (*on_sys_shmctl_enter_t)(CPUState* cpu, target_ulong pc, int32_t shmid, int32_t cmd, uint32_t buf);
typedef void (*on_sys_shmctl_return_t)(CPUState* cpu, target_ulong pc, int32_t shmid, int32_t cmd, uint32_t buf);
typedef void (*on_sys_shmdt_enter_t)(CPUState* cpu, target_ulong pc, uint32_t shmaddr);
typedef void (*on_sys_shmdt_return_t)(CPUState* cpu, target_ulong pc, uint32_t shmaddr);
typedef void (*on_sys_shmget_enter_t)(CPUState* cpu, target_ulong pc, uint32_t key, uint32_t size, int32_t flag);
typedef void (*on_sys_shmget_return_t)(CPUState* cpu, target_ulong pc, uint32_t key, uint32_t size, int32_t flag);
typedef void (*on_sys_shutdown_enter_t)(CPUState* cpu, target_ulong pc, int32_t arg0, int32_t arg1);
typedef void (*on_sys_shutdown_return_t)(CPUState* cpu, target_ulong pc, int32_t arg0, int32_t arg1);
typedef void (*on_sys_signalfd_enter_t)(CPUState* cpu, target_ulong pc, int32_t ufd, uint32_t user_mask, uint32_t sizemask);
typedef void (*on_sys_signalfd_return_t)(CPUState* cpu, target_ulong pc, int32_t ufd, uint32_t user_mask, uint32_t sizemask);
typedef void (*on_sys_signalfd4_enter_t)(CPUState* cpu, target_ulong pc, int32_t ufd, uint32_t user_mask, uint32_t sizemask, int32_t flags);
typedef void (*on_sys_signalfd4_return_t)(CPUState* cpu, target_ulong pc, int32_t ufd, uint32_t user_mask, uint32_t sizemask, int32_t flags);
typedef void (*on_sys_sigpending_enter_t)(CPUState* cpu, target_ulong pc, uint32_t set);
typedef void (*on_sys_sigpending_return_t)(CPUState* cpu, target_ulong pc, uint32_t set);
typedef void (*on_sys_sigprocmask_enter_t)(CPUState* cpu, target_ulong pc, int32_t how, uint32_t set, uint32_t oset);
typedef void (*on_sys_sigprocmask_return_t)(CPUState* cpu, target_ulong pc, int32_t how, uint32_t set, uint32_t oset);
typedef void (*on_sys_socket_enter_t)(CPUState* cpu, target_ulong pc, int32_t arg0, int32_t arg1, int32_t arg2);
typedef void (*on_sys_socket_return_t)(CPUState* cpu, target_ulong pc, int32_t arg0, int32_t arg1, int32_t arg2);
typedef void (*on_sys_socketpair_enter_t)(CPUState* cpu, target_ulong pc, int32_t arg0, int32_t arg1, int32_t arg2, uint32_t arg3);
typedef void (*on_sys_socketpair_return_t)(CPUState* cpu, target_ulong pc, int32_t arg0, int32_t arg1, int32_t arg2, uint32_t arg3);
typedef void (*on_sys_splice_enter_t)(CPUState* cpu, target_ulong pc, int32_t fd_in, uint32_t off_in, int32_t fd_out, uint32_t off_out, uint32_t len, uint32_t flags);
typedef void (*on_sys_splice_return_t)(CPUState* cpu, target_ulong pc, int32_t fd_in, uint32_t off_in, int32_t fd_out, uint32_t off_out, uint32_t len, uint32_t flags);
typedef void (*on_sys_stat64_enter_t)(CPUState* cpu, target_ulong pc, uint32_t filename, uint32_t statbuf);
typedef void (*on_sys_stat64_return_t)(CPUState* cpu, target_ulong pc, uint32_t filename, uint32_t statbuf);
typedef void (*on_sys_statfs_enter_t)(CPUState* cpu, target_ulong pc, uint32_t path, uint32_t buf);
typedef void (*on_sys_statfs_return_t)(CPUState* cpu, target_ulong pc, uint32_t path, uint32_t buf);
typedef void (*on_sys_statfs64_enter_t)(CPUState* cpu, target_ulong pc, uint32_t path, uint32_t sz, uint32_t buf);
typedef void (*on_sys_statfs64_return_t)(CPUState* cpu, target_ulong pc, uint32_t path, uint32_t sz, uint32_t buf);
typedef void (*on_sys_swapoff_enter_t)(CPUState* cpu, target_ulong pc, uint32_t specialfile);
typedef void (*on_sys_swapoff_return_t)(CPUState* cpu, target_ulong pc, uint32_t specialfile);
typedef void (*on_sys_swapon_enter_t)(CPUState* cpu, target_ulong pc, uint32_t specialfile, int32_t swap_flags);
typedef void (*on_sys_swapon_return_t)(CPUState* cpu, target_ulong pc, uint32_t specialfile, int32_t swap_flags);
typedef void (*on_sys_symlink_enter_t)(CPUState* cpu, target_ulong pc, uint32_t old, uint32_t _new);
typedef void (*on_sys_symlink_return_t)(CPUState* cpu, target_ulong pc, uint32_t old, uint32_t _new);
typedef void (*on_sys_symlinkat_enter_t)(CPUState* cpu, target_ulong pc, uint32_t oldname, int32_t newdfd, uint32_t newname);
typedef void (*on_sys_symlinkat_return_t)(CPUState* cpu, target_ulong pc, uint32_t oldname, int32_t newdfd, uint32_t newname);
typedef void (*on_sys_sync_enter_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_sys_sync_return_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_sys_sync_file_range2_enter_t)(CPUState* cpu, target_ulong pc, int32_t fd, uint32_t flags, uint64_t offset, uint64_t nbytes);
typedef void (*on_sys_sync_file_range2_return_t)(CPUState* cpu, target_ulong pc, int32_t fd, uint32_t flags, uint64_t offset, uint64_t nbytes);
typedef void (*on_sys_sysctl_enter_t)(CPUState* cpu, target_ulong pc, uint32_t args);
typedef void (*on_sys_sysctl_return_t)(CPUState* cpu, target_ulong pc, uint32_t args);
typedef void (*on_sys_sysfs_enter_t)(CPUState* cpu, target_ulong pc, int32_t option, uint32_t arg1, uint32_t arg2);
typedef void (*on_sys_sysfs_return_t)(CPUState* cpu, target_ulong pc, int32_t option, uint32_t arg1, uint32_t arg2);
typedef void (*on_sys_sysinfo_enter_t)(CPUState* cpu, target_ulong pc, uint32_t info);
typedef void (*on_sys_sysinfo_return_t)(CPUState* cpu, target_ulong pc, uint32_t info);
typedef void (*on_sys_syslog_enter_t)(CPUState* cpu, target_ulong pc, int32_t type, uint32_t buf, int32_t len);
typedef void (*on_sys_syslog_return_t)(CPUState* cpu, target_ulong pc, int32_t type, uint32_t buf, int32_t len);
typedef void (*on_sys_tee_enter_t)(CPUState* cpu, target_ulong pc, int32_t fdin, int32_t fdout, uint32_t len, uint32_t flags);
typedef void (*on_sys_tee_return_t)(CPUState* cpu, target_ulong pc, int32_t fdin, int32_t fdout, uint32_t len, uint32_t flags);
typedef void (*on_sys_tgkill_enter_t)(CPUState* cpu, target_ulong pc, int32_t tgid, int32_t pid, int32_t sig);
typedef void (*on_sys_tgkill_return_t)(CPUState* cpu, target_ulong pc, int32_t tgid, int32_t pid, int32_t sig);
typedef void (*on_sys_timer_create_enter_t)(CPUState* cpu, target_ulong pc, uint32_t which_clock, uint32_t timer_event_spec, uint32_t created_timer_id);
typedef void (*on_sys_timer_create_return_t)(CPUState* cpu, target_ulong pc, uint32_t which_clock, uint32_t timer_event_spec, uint32_t created_timer_id);
typedef void (*on_sys_timer_delete_enter_t)(CPUState* cpu, target_ulong pc, uint32_t timer_id);
typedef void (*on_sys_timer_delete_return_t)(CPUState* cpu, target_ulong pc, uint32_t timer_id);
typedef void (*on_sys_timer_getoverrun_enter_t)(CPUState* cpu, target_ulong pc, uint32_t timer_id);
typedef void (*on_sys_timer_getoverrun_return_t)(CPUState* cpu, target_ulong pc, uint32_t timer_id);
typedef void (*on_sys_timer_gettime_enter_t)(CPUState* cpu, target_ulong pc, uint32_t timer_id, uint32_t setting);
typedef void (*on_sys_timer_gettime_return_t)(CPUState* cpu, target_ulong pc, uint32_t timer_id, uint32_t setting);
typedef void (*on_sys_timer_settime_enter_t)(CPUState* cpu, target_ulong pc, uint32_t timer_id, int32_t flags, uint32_t new_setting, uint32_t old_setting);
typedef void (*on_sys_timer_settime_return_t)(CPUState* cpu, target_ulong pc, uint32_t timer_id, int32_t flags, uint32_t new_setting, uint32_t old_setting);
typedef void (*on_sys_timerfd_create_enter_t)(CPUState* cpu, target_ulong pc, int32_t clockid, int32_t flags);
typedef void (*on_sys_timerfd_create_return_t)(CPUState* cpu, target_ulong pc, int32_t clockid, int32_t flags);
typedef void (*on_sys_timerfd_gettime_enter_t)(CPUState* cpu, target_ulong pc, int32_t ufd, uint32_t otmr);
typedef void (*on_sys_timerfd_gettime_return_t)(CPUState* cpu, target_ulong pc, int32_t ufd, uint32_t otmr);
typedef void (*on_sys_timerfd_settime_enter_t)(CPUState* cpu, target_ulong pc, int32_t ufd, int32_t flags, uint32_t utmr, uint32_t otmr);
typedef void (*on_sys_timerfd_settime_return_t)(CPUState* cpu, target_ulong pc, int32_t ufd, int32_t flags, uint32_t utmr, uint32_t otmr);
typedef void (*on_sys_times_enter_t)(CPUState* cpu, target_ulong pc, uint32_t tbuf);
typedef void (*on_sys_times_return_t)(CPUState* cpu, target_ulong pc, uint32_t tbuf);
typedef void (*on_sys_tkill_enter_t)(CPUState* cpu, target_ulong pc, int32_t pid, int32_t sig);
typedef void (*on_sys_tkill_return_t)(CPUState* cpu, target_ulong pc, int32_t pid, int32_t sig);
typedef void (*on_sys_truncate_enter_t)(CPUState* cpu, target_ulong pc, uint32_t path, uint32_t length);
typedef void (*on_sys_truncate_return_t)(CPUState* cpu, target_ulong pc, uint32_t path, uint32_t length);
typedef void (*on_sys_truncate64_enter_t)(CPUState* cpu, target_ulong pc, uint32_t path, uint64_t length);
typedef void (*on_sys_truncate64_return_t)(CPUState* cpu, target_ulong pc, uint32_t path, uint64_t length);
typedef void (*on_sys_umask_enter_t)(CPUState* cpu, target_ulong pc, int32_t mask);
typedef void (*on_sys_umask_return_t)(CPUState* cpu, target_ulong pc, int32_t mask);
typedef void (*on_sys_umount_enter_t)(CPUState* cpu, target_ulong pc, uint32_t name, int32_t flags);
typedef void (*on_sys_umount_return_t)(CPUState* cpu, target_ulong pc, uint32_t name, int32_t flags);
typedef void (*on_sys_unlink_enter_t)(CPUState* cpu, target_ulong pc, uint32_t pathname);
typedef void (*on_sys_unlink_return_t)(CPUState* cpu, target_ulong pc, uint32_t pathname);
typedef void (*on_sys_unlinkat_enter_t)(CPUState* cpu, target_ulong pc, int32_t dfd, uint32_t pathname, int32_t flag);
typedef void (*on_sys_unlinkat_return_t)(CPUState* cpu, target_ulong pc, int32_t dfd, uint32_t pathname, int32_t flag);
typedef void (*on_sys_unshare_enter_t)(CPUState* cpu, target_ulong pc, uint32_t unshare_flags);
typedef void (*on_sys_unshare_return_t)(CPUState* cpu, target_ulong pc, uint32_t unshare_flags);
typedef void (*on_sys_uselib_enter_t)(CPUState* cpu, target_ulong pc, uint32_t library);
typedef void (*on_sys_uselib_return_t)(CPUState* cpu, target_ulong pc, uint32_t library);
typedef void (*on_sys_ustat_enter_t)(CPUState* cpu, target_ulong pc, uint32_t dev, uint32_t ubuf);
typedef void (*on_sys_ustat_return_t)(CPUState* cpu, target_ulong pc, uint32_t dev, uint32_t ubuf);
typedef void (*on_sys_utimensat_enter_t)(CPUState* cpu, target_ulong pc, int32_t dfd, uint32_t filename, uint32_t utimes, int32_t flags);
typedef void (*on_sys_utimensat_return_t)(CPUState* cpu, target_ulong pc, int32_t dfd, uint32_t filename, uint32_t utimes, int32_t flags);
typedef void (*on_sys_utimes_enter_t)(CPUState* cpu, target_ulong pc, uint32_t filename, uint32_t utimes);
typedef void (*on_sys_utimes_return_t)(CPUState* cpu, target_ulong pc, uint32_t filename, uint32_t utimes);
typedef void (*on_sys_vhangup_enter_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_sys_vhangup_return_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_sys_vmsplice_enter_t)(CPUState* cpu, target_ulong pc, int32_t fd, uint32_t iov, uint32_t nr_segs, uint32_t flags);
typedef void (*on_sys_vmsplice_return_t)(CPUState* cpu, target_ulong pc, int32_t fd, uint32_t iov, uint32_t nr_segs, uint32_t flags);
typedef void (*on_sys_wait4_enter_t)(CPUState* cpu, target_ulong pc, uint32_t pid, uint32_t stat_addr, int32_t options, uint32_t ru);
typedef void (*on_sys_wait4_return_t)(CPUState* cpu, target_ulong pc, uint32_t pid, uint32_t stat_addr, int32_t options, uint32_t ru);
typedef void (*on_sys_waitid_enter_t)(CPUState* cpu, target_ulong pc, int32_t which, uint32_t pid, uint32_t infop, int32_t options, uint32_t ru);
typedef void (*on_sys_waitid_return_t)(CPUState* cpu, target_ulong pc, int32_t which, uint32_t pid, uint32_t infop, int32_t options, uint32_t ru);
typedef void (*on_sys_write_enter_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t buf, uint32_t count);
typedef void (*on_sys_write_return_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t buf, uint32_t count);
typedef void (*on_sys_writev_enter_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t vec, uint32_t vlen);
typedef void (*on_sys_writev_return_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t vec, uint32_t vlen);
typedef void (*on_vfork_enter_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_vfork_return_t)(CPUState* cpu, target_ulong pc);
#endif
#ifdef TARGET_I386
typedef void (*on_get_thread_area_enter_t)(CPUState* cpu, target_ulong pc, uint32_t u_info);
typedef void (*on_get_thread_area_return_t)(CPUState* cpu, target_ulong pc, uint32_t u_info);
typedef void (*on_NtAcceptConnectPort_enter_t)(CPUState* cpu, target_ulong pc, uint32_t PortHandle, uint32_t PortContext, uint32_t ConnectionRequest, uint32_t AcceptConnection, uint32_t ServerView, uint32_t ClientView);
typedef void (*on_NtAcceptConnectPort_return_t)(CPUState* cpu, target_ulong pc, uint32_t PortHandle, uint32_t PortContext, uint32_t ConnectionRequest, uint32_t AcceptConnection, uint32_t ServerView, uint32_t ClientView);
typedef void (*on_NtAccessCheck_enter_t)(CPUState* cpu, target_ulong pc, uint32_t SecurityDescriptor, uint32_t ClientToken, uint32_t DesiredAccess, uint32_t GenericMapping, uint32_t PrivilegeSet, uint32_t PrivilegeSetLength, uint32_t GrantedAccess, uint32_t AccessStatus);
typedef void (*on_NtAccessCheck_return_t)(CPUState* cpu, target_ulong pc, uint32_t SecurityDescriptor, uint32_t ClientToken, uint32_t DesiredAccess, uint32_t GenericMapping, uint32_t PrivilegeSet, uint32_t PrivilegeSetLength, uint32_t GrantedAccess, uint32_t AccessStatus);
typedef void (*on_NtAccessCheckAndAuditAlarm_enter_t)(CPUState* cpu, target_ulong pc, uint32_t SubsystemName, uint32_t HandleId, uint32_t ObjectTypeName, uint32_t ObjectName, uint32_t SecurityDescriptor, uint32_t DesiredAccess, uint32_t GenericMapping, uint32_t ObjectCreation, uint32_t GrantedAccess, uint32_t AccessStatus, uint32_t GenerateOnClose);
typedef void (*on_NtAccessCheckAndAuditAlarm_return_t)(CPUState* cpu, target_ulong pc, uint32_t SubsystemName, uint32_t HandleId, uint32_t ObjectTypeName, uint32_t ObjectName, uint32_t SecurityDescriptor, uint32_t DesiredAccess, uint32_t GenericMapping, uint32_t ObjectCreation, uint32_t GrantedAccess, uint32_t AccessStatus, uint32_t GenerateOnClose);
typedef void (*on_NtAccessCheckByType_enter_t)(CPUState* cpu, target_ulong pc, uint32_t SecurityDescriptor, uint32_t PrincipalSelfSid, uint32_t ClientToken, uint32_t DesiredAccess, uint32_t ObjectTypeList, uint32_t ObjectTypeListLength, uint32_t GenericMapping, uint32_t PrivilegeSet, uint32_t PrivilegeSetLength, uint32_t GrantedAccess, uint32_t AccessStatus);
typedef void (*on_NtAccessCheckByType_return_t)(CPUState* cpu, target_ulong pc, uint32_t SecurityDescriptor, uint32_t PrincipalSelfSid, uint32_t ClientToken, uint32_t DesiredAccess, uint32_t ObjectTypeList, uint32_t ObjectTypeListLength, uint32_t GenericMapping, uint32_t PrivilegeSet, uint32_t PrivilegeSetLength, uint32_t GrantedAccess, uint32_t AccessStatus);
typedef void (*on_NtAccessCheckByTypeAndAuditAlarm_enter_t)(CPUState* cpu, target_ulong pc, uint32_t SubsystemName, uint32_t HandleId, uint32_t ObjectTypeName, uint32_t ObjectName, uint32_t SecurityDescriptor, uint32_t PrincipalSelfSid, uint32_t DesiredAccess, uint32_t AuditType, uint32_t Flags, uint32_t ObjectTypeList, uint32_t ObjectTypeListLength, uint32_t GenericMapping, uint32_t ObjectCreation, uint32_t GrantedAccess, uint32_t AccessStatus, uint32_t GenerateOnClose);
typedef void (*on_NtAccessCheckByTypeAndAuditAlarm_return_t)(CPUState* cpu, target_ulong pc, uint32_t SubsystemName, uint32_t HandleId, uint32_t ObjectTypeName, uint32_t ObjectName, uint32_t SecurityDescriptor, uint32_t PrincipalSelfSid, uint32_t DesiredAccess, uint32_t AuditType, uint32_t Flags, uint32_t ObjectTypeList, uint32_t ObjectTypeListLength, uint32_t GenericMapping, uint32_t ObjectCreation, uint32_t GrantedAccess, uint32_t AccessStatus, uint32_t GenerateOnClose);
typedef void (*on_NtAccessCheckByTypeResultList_enter_t)(CPUState* cpu, target_ulong pc, uint32_t SecurityDescriptor, uint32_t PrincipalSelfSid, uint32_t ClientToken, uint32_t DesiredAccess, uint32_t ObjectTypeList, uint32_t ObjectTypeListLength, uint32_t GenericMapping, uint32_t PrivilegeSet, uint32_t PrivilegeSetLength, uint32_t GrantedAccess, uint32_t AccessStatus);
typedef void (*on_NtAccessCheckByTypeResultList_return_t)(CPUState* cpu, target_ulong pc, uint32_t SecurityDescriptor, uint32_t PrincipalSelfSid, uint32_t ClientToken, uint32_t DesiredAccess, uint32_t ObjectTypeList, uint32_t ObjectTypeListLength, uint32_t GenericMapping, uint32_t PrivilegeSet, uint32_t PrivilegeSetLength, uint32_t GrantedAccess, uint32_t AccessStatus);
typedef void (*on_NtAccessCheckByTypeResultListAndAuditAlarm_enter_t)(CPUState* cpu, target_ulong pc, uint32_t SubsystemName, uint32_t HandleId, uint32_t ObjectTypeName, uint32_t ObjectName, uint32_t SecurityDescriptor, uint32_t PrincipalSelfSid, uint32_t DesiredAccess, uint32_t AuditType, uint32_t Flags, uint32_t ObjectTypeList, uint32_t ObjectTypeListLength, uint32_t GenericMapping, uint32_t ObjectCreation, uint32_t GrantedAccess, uint32_t AccessStatus, uint32_t GenerateOnClose);
typedef void (*on_NtAccessCheckByTypeResultListAndAuditAlarm_return_t)(CPUState* cpu, target_ulong pc, uint32_t SubsystemName, uint32_t HandleId, uint32_t ObjectTypeName, uint32_t ObjectName, uint32_t SecurityDescriptor, uint32_t PrincipalSelfSid, uint32_t DesiredAccess, uint32_t AuditType, uint32_t Flags, uint32_t ObjectTypeList, uint32_t ObjectTypeListLength, uint32_t GenericMapping, uint32_t ObjectCreation, uint32_t GrantedAccess, uint32_t AccessStatus, uint32_t GenerateOnClose);
typedef void (*on_NtAccessCheckByTypeResultListAndAuditAlarmByHandle_enter_t)(CPUState* cpu, target_ulong pc, uint32_t SubsystemName, uint32_t HandleId, uint32_t ClientToken, uint32_t ObjectTypeName, uint32_t ObjectName, uint32_t SecurityDescriptor, uint32_t PrincipalSelfSid, uint32_t DesiredAccess, uint32_t AuditType, uint32_t Flags, uint32_t ObjectTypeList, uint32_t ObjectTypeListLength, uint32_t GenericMapping, uint32_t ObjectCreation, uint32_t GrantedAccess, uint32_t AccessStatus, uint32_t GenerateOnClose);
typedef void (*on_NtAccessCheckByTypeResultListAndAuditAlarmByHandle_return_t)(CPUState* cpu, target_ulong pc, uint32_t SubsystemName, uint32_t HandleId, uint32_t ClientToken, uint32_t ObjectTypeName, uint32_t ObjectName, uint32_t SecurityDescriptor, uint32_t PrincipalSelfSid, uint32_t DesiredAccess, uint32_t AuditType, uint32_t Flags, uint32_t ObjectTypeList, uint32_t ObjectTypeListLength, uint32_t GenericMapping, uint32_t ObjectCreation, uint32_t GrantedAccess, uint32_t AccessStatus, uint32_t GenerateOnClose);
typedef void (*on_NtAddAtom_enter_t)(CPUState* cpu, target_ulong pc, uint32_t AtomName, uint32_t Length, uint32_t Atom);
typedef void (*on_NtAddAtom_return_t)(CPUState* cpu, target_ulong pc, uint32_t AtomName, uint32_t Length, uint32_t Atom);
typedef void (*on_NtAddBootEntry_enter_t)(CPUState* cpu, target_ulong pc, uint32_t BootEntry, uint32_t Id);
typedef void (*on_NtAddBootEntry_return_t)(CPUState* cpu, target_ulong pc, uint32_t BootEntry, uint32_t Id);
typedef void (*on_NtAddDriverEntry_enter_t)(CPUState* cpu, target_ulong pc, uint32_t DriverEntry, uint32_t Id);
typedef void (*on_NtAddDriverEntry_return_t)(CPUState* cpu, target_ulong pc, uint32_t DriverEntry, uint32_t Id);
typedef void (*on_NtAdjustGroupsToken_enter_t)(CPUState* cpu, target_ulong pc, uint32_t TokenHandle, uint32_t ResetToDefault, uint32_t NewState, uint32_t BufferLength, uint32_t PreviousState, uint32_t ReturnLength);
typedef void (*on_NtAdjustGroupsToken_return_t)(CPUState* cpu, target_ulong pc, uint32_t TokenHandle, uint32_t ResetToDefault, uint32_t NewState, uint32_t BufferLength, uint32_t PreviousState, uint32_t ReturnLength);
typedef void (*on_NtAdjustPrivilegesToken_enter_t)(CPUState* cpu, target_ulong pc, uint32_t TokenHandle, uint32_t DisableAllPrivileges, uint32_t NewState, uint32_t BufferLength, uint32_t PreviousState, uint32_t ReturnLength);
typedef void (*on_NtAdjustPrivilegesToken_return_t)(CPUState* cpu, target_ulong pc, uint32_t TokenHandle, uint32_t DisableAllPrivileges, uint32_t NewState, uint32_t BufferLength, uint32_t PreviousState, uint32_t ReturnLength);
typedef void (*on_NtAlertResumeThread_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ThreadHandle, uint32_t PreviousSuspendCount);
typedef void (*on_NtAlertResumeThread_return_t)(CPUState* cpu, target_ulong pc, uint32_t ThreadHandle, uint32_t PreviousSuspendCount);
typedef void (*on_NtAlertThread_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ThreadHandle);
typedef void (*on_NtAlertThread_return_t)(CPUState* cpu, target_ulong pc, uint32_t ThreadHandle);
typedef void (*on_NtAllocateLocallyUniqueId_enter_t)(CPUState* cpu, target_ulong pc, uint32_t Luid);
typedef void (*on_NtAllocateLocallyUniqueId_return_t)(CPUState* cpu, target_ulong pc, uint32_t Luid);
typedef void (*on_NtAllocateReserveObject_enter_t)(CPUState* cpu, target_ulong pc, uint32_t MemoryReserveHandle, uint32_t ObjectAttributes, uint32_t Type);
typedef void (*on_NtAllocateReserveObject_return_t)(CPUState* cpu, target_ulong pc, uint32_t MemoryReserveHandle, uint32_t ObjectAttributes, uint32_t Type);
typedef void (*on_NtAllocateUserPhysicalPages_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ProcessHandle, uint32_t NumberOfPages, uint32_t UserPfnArray);
typedef void (*on_NtAllocateUserPhysicalPages_return_t)(CPUState* cpu, target_ulong pc, uint32_t ProcessHandle, uint32_t NumberOfPages, uint32_t UserPfnArray);
typedef void (*on_NtAllocateUuids_enter_t)(CPUState* cpu, target_ulong pc, uint32_t Time, uint32_t Range, uint32_t Sequence, uint32_t Seed);
typedef void (*on_NtAllocateUuids_return_t)(CPUState* cpu, target_ulong pc, uint32_t Time, uint32_t Range, uint32_t Sequence, uint32_t Seed);
typedef void (*on_NtAllocateVirtualMemory_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ProcessHandle, uint32_t BaseAddress, uint32_t ZeroBits, uint32_t RegionSize, uint32_t AllocationType, uint32_t Protect);
typedef void (*on_NtAllocateVirtualMemory_return_t)(CPUState* cpu, target_ulong pc, uint32_t ProcessHandle, uint32_t BaseAddress, uint32_t ZeroBits, uint32_t RegionSize, uint32_t AllocationType, uint32_t Protect);
typedef void (*on_NtAlpcAcceptConnectPort_enter_t)(CPUState* cpu, target_ulong pc, uint32_t PortHandle, uint32_t ConnectionPortHandle, uint32_t Flags, uint32_t ObjectAttributes, uint32_t PortAttributes, uint32_t PortContext, uint32_t ConnectionRequest, uint32_t ConnectionMessageAttributes, uint32_t AcceptConnection);
typedef void (*on_NtAlpcAcceptConnectPort_return_t)(CPUState* cpu, target_ulong pc, uint32_t PortHandle, uint32_t ConnectionPortHandle, uint32_t Flags, uint32_t ObjectAttributes, uint32_t PortAttributes, uint32_t PortContext, uint32_t ConnectionRequest, uint32_t ConnectionMessageAttributes, uint32_t AcceptConnection);
typedef void (*on_NtAlpcCancelMessage_enter_t)(CPUState* cpu, target_ulong pc, uint32_t PortHandle, uint32_t Flags, uint32_t MessageContext);
typedef void (*on_NtAlpcCancelMessage_return_t)(CPUState* cpu, target_ulong pc, uint32_t PortHandle, uint32_t Flags, uint32_t MessageContext);
typedef void (*on_NtAlpcConnectPort_enter_t)(CPUState* cpu, target_ulong pc, uint32_t PortHandle, uint32_t PortName, uint32_t ObjectAttributes, uint32_t PortAttributes, uint32_t Flags, uint32_t RequiredServerSid, uint32_t ConnectionMessage, uint32_t BufferLength, uint32_t OutMessageAttributes, uint32_t InMessageAttributes, uint32_t Timeout);
typedef void (*on_NtAlpcConnectPort_return_t)(CPUState* cpu, target_ulong pc, uint32_t PortHandle, uint32_t PortName, uint32_t ObjectAttributes, uint32_t PortAttributes, uint32_t Flags, uint32_t RequiredServerSid, uint32_t ConnectionMessage, uint32_t BufferLength, uint32_t OutMessageAttributes, uint32_t InMessageAttributes, uint32_t Timeout);
typedef void (*on_NtAlpcCreatePort_enter_t)(CPUState* cpu, target_ulong pc, uint32_t PortHandle, uint32_t ObjectAttributes, uint32_t PortAttributes);
typedef void (*on_NtAlpcCreatePort_return_t)(CPUState* cpu, target_ulong pc, uint32_t PortHandle, uint32_t ObjectAttributes, uint32_t PortAttributes);
typedef void (*on_NtAlpcCreatePortSection_enter_t)(CPUState* cpu, target_ulong pc, uint32_t PortHandle, uint32_t Flags, uint32_t SectionHandle, uint32_t SectionSize, uint32_t AlpcSectionHandle, uint32_t ActualSectionSize);
typedef void (*on_NtAlpcCreatePortSection_return_t)(CPUState* cpu, target_ulong pc, uint32_t PortHandle, uint32_t Flags, uint32_t SectionHandle, uint32_t SectionSize, uint32_t AlpcSectionHandle, uint32_t ActualSectionSize);
typedef void (*on_NtAlpcCreateResourceReserve_enter_t)(CPUState* cpu, target_ulong pc, uint32_t PortHandle, uint32_t Flags, uint32_t MessageSize, uint32_t ResourceId);
typedef void (*on_NtAlpcCreateResourceReserve_return_t)(CPUState* cpu, target_ulong pc, uint32_t PortHandle, uint32_t Flags, uint32_t MessageSize, uint32_t ResourceId);
typedef void (*on_NtAlpcCreateSectionView_enter_t)(CPUState* cpu, target_ulong pc, uint32_t PortHandle, uint32_t Flags, uint32_t ViewAttributes);
typedef void (*on_NtAlpcCreateSectionView_return_t)(CPUState* cpu, target_ulong pc, uint32_t PortHandle, uint32_t Flags, uint32_t ViewAttributes);
typedef void (*on_NtAlpcCreateSecurityContext_enter_t)(CPUState* cpu, target_ulong pc, uint32_t PortHandle, uint32_t Flags, uint32_t SecurityAttribute);
typedef void (*on_NtAlpcCreateSecurityContext_return_t)(CPUState* cpu, target_ulong pc, uint32_t PortHandle, uint32_t Flags, uint32_t SecurityAttribute);
typedef void (*on_NtAlpcDeletePortSection_enter_t)(CPUState* cpu, target_ulong pc, uint32_t PortHandle, uint32_t Flags, uint32_t SectionHandle);
typedef void (*on_NtAlpcDeletePortSection_return_t)(CPUState* cpu, target_ulong pc, uint32_t PortHandle, uint32_t Flags, uint32_t SectionHandle);
typedef void (*on_NtAlpcDeleteResourceReserve_enter_t)(CPUState* cpu, target_ulong pc, uint32_t PortHandle, uint32_t Flags, uint32_t ResourceId);
typedef void (*on_NtAlpcDeleteResourceReserve_return_t)(CPUState* cpu, target_ulong pc, uint32_t PortHandle, uint32_t Flags, uint32_t ResourceId);
typedef void (*on_NtAlpcDeleteSectionView_enter_t)(CPUState* cpu, target_ulong pc, uint32_t PortHandle, uint32_t Flags, uint32_t ViewBase);
typedef void (*on_NtAlpcDeleteSectionView_return_t)(CPUState* cpu, target_ulong pc, uint32_t PortHandle, uint32_t Flags, uint32_t ViewBase);
typedef void (*on_NtAlpcDeleteSecurityContext_enter_t)(CPUState* cpu, target_ulong pc, uint32_t PortHandle, uint32_t Flags, uint32_t ContextHandle);
typedef void (*on_NtAlpcDeleteSecurityContext_return_t)(CPUState* cpu, target_ulong pc, uint32_t PortHandle, uint32_t Flags, uint32_t ContextHandle);
typedef void (*on_NtAlpcDisconnectPort_enter_t)(CPUState* cpu, target_ulong pc, uint32_t PortHandle, uint32_t Flags);
typedef void (*on_NtAlpcDisconnectPort_return_t)(CPUState* cpu, target_ulong pc, uint32_t PortHandle, uint32_t Flags);
typedef void (*on_NtAlpcImpersonateClientOfPort_enter_t)(CPUState* cpu, target_ulong pc, uint32_t PortHandle, uint32_t PortMessage, uint32_t Reserved);
typedef void (*on_NtAlpcImpersonateClientOfPort_return_t)(CPUState* cpu, target_ulong pc, uint32_t PortHandle, uint32_t PortMessage, uint32_t Reserved);
typedef void (*on_NtAlpcOpenSenderProcess_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ProcessHandle, uint32_t PortHandle, uint32_t PortMessage, uint32_t Flags, uint32_t DesiredAccess, uint32_t ObjectAttributes);
typedef void (*on_NtAlpcOpenSenderProcess_return_t)(CPUState* cpu, target_ulong pc, uint32_t ProcessHandle, uint32_t PortHandle, uint32_t PortMessage, uint32_t Flags, uint32_t DesiredAccess, uint32_t ObjectAttributes);
typedef void (*on_NtAlpcOpenSenderThread_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ThreadHandle, uint32_t PortHandle, uint32_t PortMessage, uint32_t Flags, uint32_t DesiredAccess, uint32_t ObjectAttributes);
typedef void (*on_NtAlpcOpenSenderThread_return_t)(CPUState* cpu, target_ulong pc, uint32_t ThreadHandle, uint32_t PortHandle, uint32_t PortMessage, uint32_t Flags, uint32_t DesiredAccess, uint32_t ObjectAttributes);
typedef void (*on_NtAlpcQueryInformation_enter_t)(CPUState* cpu, target_ulong pc, uint32_t PortHandle, uint32_t PortInformationClass, uint32_t PortInformation, uint32_t Length, uint32_t ReturnLength);
typedef void (*on_NtAlpcQueryInformation_return_t)(CPUState* cpu, target_ulong pc, uint32_t PortHandle, uint32_t PortInformationClass, uint32_t PortInformation, uint32_t Length, uint32_t ReturnLength);
typedef void (*on_NtAlpcQueryInformationMessage_enter_t)(CPUState* cpu, target_ulong pc, uint32_t PortHandle, uint32_t PortMessage, uint32_t MessageInformationClass, uint32_t MessageInformation, uint32_t Length, uint32_t ReturnLength);
typedef void (*on_NtAlpcQueryInformationMessage_return_t)(CPUState* cpu, target_ulong pc, uint32_t PortHandle, uint32_t PortMessage, uint32_t MessageInformationClass, uint32_t MessageInformation, uint32_t Length, uint32_t ReturnLength);
typedef void (*on_NtAlpcRevokeSecurityContext_enter_t)(CPUState* cpu, target_ulong pc, uint32_t PortHandle, uint32_t Flags, uint32_t ContextHandle);
typedef void (*on_NtAlpcRevokeSecurityContext_return_t)(CPUState* cpu, target_ulong pc, uint32_t PortHandle, uint32_t Flags, uint32_t ContextHandle);
typedef void (*on_NtAlpcSendWaitReceivePort_enter_t)(CPUState* cpu, target_ulong pc, uint32_t PortHandle, uint32_t Flags, uint32_t SendMessage, uint32_t SendMessageAttributes, uint32_t ReceiveMessage, uint32_t BufferLength, uint32_t ReceiveMessageAttributes, uint32_t Timeout);
typedef void (*on_NtAlpcSendWaitReceivePort_return_t)(CPUState* cpu, target_ulong pc, uint32_t PortHandle, uint32_t Flags, uint32_t SendMessage, uint32_t SendMessageAttributes, uint32_t ReceiveMessage, uint32_t BufferLength, uint32_t ReceiveMessageAttributes, uint32_t Timeout);
typedef void (*on_NtAlpcSetInformation_enter_t)(CPUState* cpu, target_ulong pc, uint32_t PortHandle, uint32_t PortInformationClass, uint32_t PortInformation, uint32_t Length);
typedef void (*on_NtAlpcSetInformation_return_t)(CPUState* cpu, target_ulong pc, uint32_t PortHandle, uint32_t PortInformationClass, uint32_t PortInformation, uint32_t Length);
typedef void (*on_NtApphelpCacheControl_enter_t)(CPUState* cpu, target_ulong pc, uint32_t type, uint32_t buf);
typedef void (*on_NtApphelpCacheControl_return_t)(CPUState* cpu, target_ulong pc, uint32_t type, uint32_t buf);
typedef void (*on_NtAreMappedFilesTheSame_enter_t)(CPUState* cpu, target_ulong pc, uint32_t File1MappedAsAnImage, uint32_t File2MappedAsFile);
typedef void (*on_NtAreMappedFilesTheSame_return_t)(CPUState* cpu, target_ulong pc, uint32_t File1MappedAsAnImage, uint32_t File2MappedAsFile);
typedef void (*on_NtAssignProcessToJobObject_enter_t)(CPUState* cpu, target_ulong pc, uint32_t JobHandle, uint32_t ProcessHandle);
typedef void (*on_NtAssignProcessToJobObject_return_t)(CPUState* cpu, target_ulong pc, uint32_t JobHandle, uint32_t ProcessHandle);
typedef void (*on_NtCallbackReturn_enter_t)(CPUState* cpu, target_ulong pc, uint32_t OutputBuffer, uint32_t OutputLength, uint32_t Status);
typedef void (*on_NtCallbackReturn_return_t)(CPUState* cpu, target_ulong pc, uint32_t OutputBuffer, uint32_t OutputLength, uint32_t Status);
typedef void (*on_NtCancelIoFile_enter_t)(CPUState* cpu, target_ulong pc, uint32_t FileHandle, uint32_t IoStatusBlock);
typedef void (*on_NtCancelIoFile_return_t)(CPUState* cpu, target_ulong pc, uint32_t FileHandle, uint32_t IoStatusBlock);
typedef void (*on_NtCancelIoFileEx_enter_t)(CPUState* cpu, target_ulong pc, uint32_t FileHandle, uint32_t IoRequestToCancel, uint32_t IoStatusBlock);
typedef void (*on_NtCancelIoFileEx_return_t)(CPUState* cpu, target_ulong pc, uint32_t FileHandle, uint32_t IoRequestToCancel, uint32_t IoStatusBlock);
typedef void (*on_NtCancelSynchronousIoFile_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ThreadHandle, uint32_t IoRequestToCancel, uint32_t IoStatusBlock);
typedef void (*on_NtCancelSynchronousIoFile_return_t)(CPUState* cpu, target_ulong pc, uint32_t ThreadHandle, uint32_t IoRequestToCancel, uint32_t IoStatusBlock);
typedef void (*on_NtCancelTimer_enter_t)(CPUState* cpu, target_ulong pc, uint32_t TimerHandle, uint32_t CurrentState);
typedef void (*on_NtCancelTimer_return_t)(CPUState* cpu, target_ulong pc, uint32_t TimerHandle, uint32_t CurrentState);
typedef void (*on_NtClearEvent_enter_t)(CPUState* cpu, target_ulong pc, uint32_t EventHandle);
typedef void (*on_NtClearEvent_return_t)(CPUState* cpu, target_ulong pc, uint32_t EventHandle);
typedef void (*on_NtClose_enter_t)(CPUState* cpu, target_ulong pc, uint32_t Handle);
typedef void (*on_NtClose_return_t)(CPUState* cpu, target_ulong pc, uint32_t Handle);
typedef void (*on_NtCloseObjectAuditAlarm_enter_t)(CPUState* cpu, target_ulong pc, uint32_t SubsystemName, uint32_t HandleId, uint32_t GenerateOnClose);
typedef void (*on_NtCloseObjectAuditAlarm_return_t)(CPUState* cpu, target_ulong pc, uint32_t SubsystemName, uint32_t HandleId, uint32_t GenerateOnClose);
typedef void (*on_NtCommitComplete_enter_t)(CPUState* cpu, target_ulong pc, uint32_t EnlistmentHandle, uint32_t TmVirtualClock);
typedef void (*on_NtCommitComplete_return_t)(CPUState* cpu, target_ulong pc, uint32_t EnlistmentHandle, uint32_t TmVirtualClock);
typedef void (*on_NtCommitEnlistment_enter_t)(CPUState* cpu, target_ulong pc, uint32_t EnlistmentHandle, uint32_t TmVirtualClock);
typedef void (*on_NtCommitEnlistment_return_t)(CPUState* cpu, target_ulong pc, uint32_t EnlistmentHandle, uint32_t TmVirtualClock);
typedef void (*on_NtCommitTransaction_enter_t)(CPUState* cpu, target_ulong pc, uint32_t TransactionHandle, uint32_t Wait);
typedef void (*on_NtCommitTransaction_return_t)(CPUState* cpu, target_ulong pc, uint32_t TransactionHandle, uint32_t Wait);
typedef void (*on_NtCompactKeys_enter_t)(CPUState* cpu, target_ulong pc, uint32_t Count, uint32_t KeyArray);
typedef void (*on_NtCompactKeys_return_t)(CPUState* cpu, target_ulong pc, uint32_t Count, uint32_t KeyArray);
typedef void (*on_NtCompareTokens_enter_t)(CPUState* cpu, target_ulong pc, uint32_t FirstTokenHandle, uint32_t SecondTokenHandle, uint32_t Equal);
typedef void (*on_NtCompareTokens_return_t)(CPUState* cpu, target_ulong pc, uint32_t FirstTokenHandle, uint32_t SecondTokenHandle, uint32_t Equal);
typedef void (*on_NtCompleteConnectPort_enter_t)(CPUState* cpu, target_ulong pc, uint32_t PortHandle);
typedef void (*on_NtCompleteConnectPort_return_t)(CPUState* cpu, target_ulong pc, uint32_t PortHandle);
typedef void (*on_NtCompressKey_enter_t)(CPUState* cpu, target_ulong pc, uint32_t Key);
typedef void (*on_NtCompressKey_return_t)(CPUState* cpu, target_ulong pc, uint32_t Key);
typedef void (*on_NtConnectPort_enter_t)(CPUState* cpu, target_ulong pc, uint32_t PortHandle, uint32_t PortName, uint32_t SecurityQos, uint32_t ClientView, uint32_t ServerView, uint32_t MaxMessageLength, uint32_t ConnectionInformation, uint32_t ConnectionInformationLength);
typedef void (*on_NtConnectPort_return_t)(CPUState* cpu, target_ulong pc, uint32_t PortHandle, uint32_t PortName, uint32_t SecurityQos, uint32_t ClientView, uint32_t ServerView, uint32_t MaxMessageLength, uint32_t ConnectionInformation, uint32_t ConnectionInformationLength);
typedef void (*on_NtContinue_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ContextRecord, uint32_t TestAlert);
typedef void (*on_NtContinue_return_t)(CPUState* cpu, target_ulong pc, uint32_t ContextRecord, uint32_t TestAlert);
typedef void (*on_NtCreateDebugObject_enter_t)(CPUState* cpu, target_ulong pc, uint32_t DebugObjectHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes, uint32_t Flags);
typedef void (*on_NtCreateDebugObject_return_t)(CPUState* cpu, target_ulong pc, uint32_t DebugObjectHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes, uint32_t Flags);
typedef void (*on_NtCreateDirectoryObject_enter_t)(CPUState* cpu, target_ulong pc, uint32_t DirectoryHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes);
typedef void (*on_NtCreateDirectoryObject_return_t)(CPUState* cpu, target_ulong pc, uint32_t DirectoryHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes);
typedef void (*on_NtCreateEnlistment_enter_t)(CPUState* cpu, target_ulong pc, uint32_t EnlistmentHandle, uint32_t DesiredAccess, uint32_t ResourceManagerHandle, uint32_t TransactionHandle, uint32_t ObjectAttributes, uint32_t CreateOptions, uint32_t NotificationMask, uint32_t EnlistmentKey);
typedef void (*on_NtCreateEnlistment_return_t)(CPUState* cpu, target_ulong pc, uint32_t EnlistmentHandle, uint32_t DesiredAccess, uint32_t ResourceManagerHandle, uint32_t TransactionHandle, uint32_t ObjectAttributes, uint32_t CreateOptions, uint32_t NotificationMask, uint32_t EnlistmentKey);
typedef void (*on_NtCreateEvent_enter_t)(CPUState* cpu, target_ulong pc, uint32_t EventHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes, uint32_t EventType, uint32_t InitialState);
typedef void (*on_NtCreateEvent_return_t)(CPUState* cpu, target_ulong pc, uint32_t EventHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes, uint32_t EventType, uint32_t InitialState);
typedef void (*on_NtCreateEventPair_enter_t)(CPUState* cpu, target_ulong pc, uint32_t EventPairHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes);
typedef void (*on_NtCreateEventPair_return_t)(CPUState* cpu, target_ulong pc, uint32_t EventPairHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes);
typedef void (*on_NtCreateFile_enter_t)(CPUState* cpu, target_ulong pc, uint32_t FileHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes, uint32_t IoStatusBlock, uint32_t AllocationSize, uint32_t FileAttributes, uint32_t ShareAccess, uint32_t CreateDisposition, uint32_t CreateOptions, uint32_t EaBuffer, uint32_t EaLength);
typedef void (*on_NtCreateFile_return_t)(CPUState* cpu, target_ulong pc, uint32_t FileHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes, uint32_t IoStatusBlock, uint32_t AllocationSize, uint32_t FileAttributes, uint32_t ShareAccess, uint32_t CreateDisposition, uint32_t CreateOptions, uint32_t EaBuffer, uint32_t EaLength);
typedef void (*on_NtCreateIoCompletion_enter_t)(CPUState* cpu, target_ulong pc, uint32_t IoCompletionHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes, uint32_t Count);
typedef void (*on_NtCreateIoCompletion_return_t)(CPUState* cpu, target_ulong pc, uint32_t IoCompletionHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes, uint32_t Count);
typedef void (*on_NtCreateJobObject_enter_t)(CPUState* cpu, target_ulong pc, uint32_t JobHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes);
typedef void (*on_NtCreateJobObject_return_t)(CPUState* cpu, target_ulong pc, uint32_t JobHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes);
typedef void (*on_NtCreateJobSet_enter_t)(CPUState* cpu, target_ulong pc, uint32_t NumJob, uint32_t UserJobSet, uint32_t Flags);
typedef void (*on_NtCreateJobSet_return_t)(CPUState* cpu, target_ulong pc, uint32_t NumJob, uint32_t UserJobSet, uint32_t Flags);
typedef void (*on_NtCreateKey_enter_t)(CPUState* cpu, target_ulong pc, uint32_t KeyHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes, uint32_t TitleIndex, uint32_t Class, uint32_t CreateOptions, uint32_t Disposition);
typedef void (*on_NtCreateKey_return_t)(CPUState* cpu, target_ulong pc, uint32_t KeyHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes, uint32_t TitleIndex, uint32_t Class, uint32_t CreateOptions, uint32_t Disposition);
typedef void (*on_NtCreateKeyedEvent_enter_t)(CPUState* cpu, target_ulong pc, uint32_t KeyedEventHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes, uint32_t Flags);
typedef void (*on_NtCreateKeyedEvent_return_t)(CPUState* cpu, target_ulong pc, uint32_t KeyedEventHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes, uint32_t Flags);
typedef void (*on_NtCreateKeyTransacted_enter_t)(CPUState* cpu, target_ulong pc, uint32_t KeyHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes, uint32_t TitleIndex, uint32_t Class, uint32_t CreateOptions, uint32_t TransactionHandle, uint32_t Disposition);
typedef void (*on_NtCreateKeyTransacted_return_t)(CPUState* cpu, target_ulong pc, uint32_t KeyHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes, uint32_t TitleIndex, uint32_t Class, uint32_t CreateOptions, uint32_t TransactionHandle, uint32_t Disposition);
typedef void (*on_NtCreateMailslotFile_enter_t)(CPUState* cpu, target_ulong pc, uint32_t FileHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes, uint32_t IoStatusBlock, uint32_t CreateOptions, uint32_t MailslotQuota, uint32_t MaximumMessageSize, uint32_t ReadTimeout);
typedef void (*on_NtCreateMailslotFile_return_t)(CPUState* cpu, target_ulong pc, uint32_t FileHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes, uint32_t IoStatusBlock, uint32_t CreateOptions, uint32_t MailslotQuota, uint32_t MaximumMessageSize, uint32_t ReadTimeout);
typedef void (*on_NtCreateMutant_enter_t)(CPUState* cpu, target_ulong pc, uint32_t MutantHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes, uint32_t InitialOwner);
typedef void (*on_NtCreateMutant_return_t)(CPUState* cpu, target_ulong pc, uint32_t MutantHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes, uint32_t InitialOwner);
typedef void (*on_NtCreateNamedPipeFile_enter_t)(CPUState* cpu, target_ulong pc, uint32_t FileHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes, uint32_t IoStatusBlock, uint32_t ShareAccess, uint32_t CreateDisposition, uint32_t CreateOptions, uint32_t NamedPipeType, uint32_t ReadMode, uint32_t CompletionMode, uint32_t MaximumInstances, uint32_t InboundQuota, uint32_t OutboundQuota, uint32_t DefaultTimeout);
typedef void (*on_NtCreateNamedPipeFile_return_t)(CPUState* cpu, target_ulong pc, uint32_t FileHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes, uint32_t IoStatusBlock, uint32_t ShareAccess, uint32_t CreateDisposition, uint32_t CreateOptions, uint32_t NamedPipeType, uint32_t ReadMode, uint32_t CompletionMode, uint32_t MaximumInstances, uint32_t InboundQuota, uint32_t OutboundQuota, uint32_t DefaultTimeout);
typedef void (*on_NtCreatePagingFile_enter_t)(CPUState* cpu, target_ulong pc, uint32_t PageFileName, uint32_t MinimumSize, uint32_t MaximumSize, uint32_t Priority);
typedef void (*on_NtCreatePagingFile_return_t)(CPUState* cpu, target_ulong pc, uint32_t PageFileName, uint32_t MinimumSize, uint32_t MaximumSize, uint32_t Priority);
typedef void (*on_NtCreatePort_enter_t)(CPUState* cpu, target_ulong pc, uint32_t PortHandle, uint32_t ObjectAttributes, uint32_t MaxConnectionInfoLength, uint32_t MaxMessageLength, uint32_t MaxPoolUsage);
typedef void (*on_NtCreatePort_return_t)(CPUState* cpu, target_ulong pc, uint32_t PortHandle, uint32_t ObjectAttributes, uint32_t MaxConnectionInfoLength, uint32_t MaxMessageLength, uint32_t MaxPoolUsage);
typedef void (*on_NtCreatePrivateNamespace_enter_t)(CPUState* cpu, target_ulong pc, uint32_t NamespaceHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes, uint32_t BoundaryDescriptor);
typedef void (*on_NtCreatePrivateNamespace_return_t)(CPUState* cpu, target_ulong pc, uint32_t NamespaceHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes, uint32_t BoundaryDescriptor);
typedef void (*on_NtCreateProcess_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ProcessHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes, uint32_t ParentProcess, uint32_t InheritObjectTable, uint32_t SectionHandle, uint32_t DebugPort, uint32_t ExceptionPort);
typedef void (*on_NtCreateProcess_return_t)(CPUState* cpu, target_ulong pc, uint32_t ProcessHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes, uint32_t ParentProcess, uint32_t InheritObjectTable, uint32_t SectionHandle, uint32_t DebugPort, uint32_t ExceptionPort);
typedef void (*on_NtCreateProcessEx_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ProcessHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes, uint32_t ParentProcess, uint32_t Flags, uint32_t SectionHandle, uint32_t DebugPort, uint32_t ExceptionPort, uint32_t JobMemberLevel);
typedef void (*on_NtCreateProcessEx_return_t)(CPUState* cpu, target_ulong pc, uint32_t ProcessHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes, uint32_t ParentProcess, uint32_t Flags, uint32_t SectionHandle, uint32_t DebugPort, uint32_t ExceptionPort, uint32_t JobMemberLevel);
typedef void (*on_NtCreateProfile_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ProfileHandle, uint32_t Process, uint32_t RangeBase, uint32_t RangeSize, uint32_t BucketSize, uint32_t Buffer, uint32_t BufferSize, uint32_t ProfileSource, uint32_t Affinity);
typedef void (*on_NtCreateProfile_return_t)(CPUState* cpu, target_ulong pc, uint32_t ProfileHandle, uint32_t Process, uint32_t RangeBase, uint32_t RangeSize, uint32_t BucketSize, uint32_t Buffer, uint32_t BufferSize, uint32_t ProfileSource, uint32_t Affinity);
typedef void (*on_NtCreateProfileEx_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ProfileHandle, uint32_t Process, uint32_t ProfileBase, uint32_t ProfileSize, uint32_t BucketSize, uint32_t Buffer, uint32_t BufferSize, uint32_t ProfileSource, uint32_t GroupAffinityCount, uint32_t GroupAffinity);
typedef void (*on_NtCreateProfileEx_return_t)(CPUState* cpu, target_ulong pc, uint32_t ProfileHandle, uint32_t Process, uint32_t ProfileBase, uint32_t ProfileSize, uint32_t BucketSize, uint32_t Buffer, uint32_t BufferSize, uint32_t ProfileSource, uint32_t GroupAffinityCount, uint32_t GroupAffinity);
typedef void (*on_NtCreateResourceManager_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ResourceManagerHandle, uint32_t DesiredAccess, uint32_t TmHandle, uint32_t RmGuid, uint32_t ObjectAttributes, uint32_t CreateOptions, uint32_t Description);
typedef void (*on_NtCreateResourceManager_return_t)(CPUState* cpu, target_ulong pc, uint32_t ResourceManagerHandle, uint32_t DesiredAccess, uint32_t TmHandle, uint32_t RmGuid, uint32_t ObjectAttributes, uint32_t CreateOptions, uint32_t Description);
typedef void (*on_NtCreateSection_enter_t)(CPUState* cpu, target_ulong pc, uint32_t SectionHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes, uint32_t MaximumSize, uint32_t SectionPageProtection, uint32_t AllocationAttributes, uint32_t FileHandle);
typedef void (*on_NtCreateSection_return_t)(CPUState* cpu, target_ulong pc, uint32_t SectionHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes, uint32_t MaximumSize, uint32_t SectionPageProtection, uint32_t AllocationAttributes, uint32_t FileHandle);
typedef void (*on_NtCreateSemaphore_enter_t)(CPUState* cpu, target_ulong pc, uint32_t SemaphoreHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes, int32_t InitialCount, int32_t MaximumCount);
typedef void (*on_NtCreateSemaphore_return_t)(CPUState* cpu, target_ulong pc, uint32_t SemaphoreHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes, int32_t InitialCount, int32_t MaximumCount);
typedef void (*on_NtCreateSymbolicLinkObject_enter_t)(CPUState* cpu, target_ulong pc, uint32_t LinkHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes, uint32_t LinkTarget);
typedef void (*on_NtCreateSymbolicLinkObject_return_t)(CPUState* cpu, target_ulong pc, uint32_t LinkHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes, uint32_t LinkTarget);
typedef void (*on_NtCreateThread_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ThreadHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes, uint32_t ProcessHandle, uint32_t ClientId, uint32_t ThreadContext, uint32_t InitialTeb, uint32_t CreateSuspended);
typedef void (*on_NtCreateThread_return_t)(CPUState* cpu, target_ulong pc, uint32_t ThreadHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes, uint32_t ProcessHandle, uint32_t ClientId, uint32_t ThreadContext, uint32_t InitialTeb, uint32_t CreateSuspended);
typedef void (*on_NtCreateThreadEx_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ThreadHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes, uint32_t ProcessHandle, uint32_t StartRoutine, uint32_t Argument, uint32_t CreateFlags, uint32_t ZeroBits, uint32_t StackSize, uint32_t MaximumStackSize, uint32_t AttributeList);
typedef void (*on_NtCreateThreadEx_return_t)(CPUState* cpu, target_ulong pc, uint32_t ThreadHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes, uint32_t ProcessHandle, uint32_t StartRoutine, uint32_t Argument, uint32_t CreateFlags, uint32_t ZeroBits, uint32_t StackSize, uint32_t MaximumStackSize, uint32_t AttributeList);
typedef void (*on_NtCreateTimer_enter_t)(CPUState* cpu, target_ulong pc, uint32_t TimerHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes, uint32_t TimerType);
typedef void (*on_NtCreateTimer_return_t)(CPUState* cpu, target_ulong pc, uint32_t TimerHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes, uint32_t TimerType);
typedef void (*on_NtCreateToken_enter_t)(CPUState* cpu, target_ulong pc, uint32_t TokenHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes, uint32_t TokenType, uint32_t AuthenticationId, uint32_t ExpirationTime, uint32_t User, uint32_t Groups, uint32_t Privileges, uint32_t Owner, uint32_t PrimaryGroup, uint32_t DefaultDacl, uint32_t TokenSource);
typedef void (*on_NtCreateToken_return_t)(CPUState* cpu, target_ulong pc, uint32_t TokenHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes, uint32_t TokenType, uint32_t AuthenticationId, uint32_t ExpirationTime, uint32_t User, uint32_t Groups, uint32_t Privileges, uint32_t Owner, uint32_t PrimaryGroup, uint32_t DefaultDacl, uint32_t TokenSource);
typedef void (*on_NtCreateTransaction_enter_t)(CPUState* cpu, target_ulong pc, uint32_t TransactionHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes, uint32_t Uow, uint32_t TmHandle, uint32_t CreateOptions, uint32_t IsolationLevel, uint32_t IsolationFlags, uint32_t Timeout, uint32_t Description);
typedef void (*on_NtCreateTransaction_return_t)(CPUState* cpu, target_ulong pc, uint32_t TransactionHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes, uint32_t Uow, uint32_t TmHandle, uint32_t CreateOptions, uint32_t IsolationLevel, uint32_t IsolationFlags, uint32_t Timeout, uint32_t Description);
typedef void (*on_NtCreateTransactionManager_enter_t)(CPUState* cpu, target_ulong pc, uint32_t TmHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes, uint32_t LogFileName, uint32_t CreateOptions, uint32_t CommitStrength);
typedef void (*on_NtCreateTransactionManager_return_t)(CPUState* cpu, target_ulong pc, uint32_t TmHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes, uint32_t LogFileName, uint32_t CreateOptions, uint32_t CommitStrength);
typedef void (*on_NtCreateUserProcess_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ProcessHandle, uint32_t ThreadHandle, uint32_t ProcessDesiredAccess, uint32_t ThreadDesiredAccess, uint32_t ProcessObjectAttributes, uint32_t ThreadObjectAttributes, uint32_t ProcessFlags, uint32_t ThreadFlags, uint32_t ProcessParameters, uint32_t CreateInfo, uint32_t AttributeList);
typedef void (*on_NtCreateUserProcess_return_t)(CPUState* cpu, target_ulong pc, uint32_t ProcessHandle, uint32_t ThreadHandle, uint32_t ProcessDesiredAccess, uint32_t ThreadDesiredAccess, uint32_t ProcessObjectAttributes, uint32_t ThreadObjectAttributes, uint32_t ProcessFlags, uint32_t ThreadFlags, uint32_t ProcessParameters, uint32_t CreateInfo, uint32_t AttributeList);
typedef void (*on_NtCreateWaitablePort_enter_t)(CPUState* cpu, target_ulong pc, uint32_t PortHandle, uint32_t ObjectAttributes, uint32_t MaxConnectionInfoLength, uint32_t MaxMessageLength, uint32_t MaxPoolUsage);
typedef void (*on_NtCreateWaitablePort_return_t)(CPUState* cpu, target_ulong pc, uint32_t PortHandle, uint32_t ObjectAttributes, uint32_t MaxConnectionInfoLength, uint32_t MaxMessageLength, uint32_t MaxPoolUsage);
typedef void (*on_NtCreateWorkerFactory_enter_t)(CPUState* cpu, target_ulong pc, uint32_t WorkerFactoryHandleReturn, uint32_t DesiredAccess, uint32_t ObjectAttributes, uint32_t CompletionPortHandle, uint32_t WorkerProcessHandle, uint32_t StartRoutine, uint32_t StartParameter, uint32_t MaxThreadCount, uint32_t StackReserve, uint32_t StackCommit);
typedef void (*on_NtCreateWorkerFactory_return_t)(CPUState* cpu, target_ulong pc, uint32_t WorkerFactoryHandleReturn, uint32_t DesiredAccess, uint32_t ObjectAttributes, uint32_t CompletionPortHandle, uint32_t WorkerProcessHandle, uint32_t StartRoutine, uint32_t StartParameter, uint32_t MaxThreadCount, uint32_t StackReserve, uint32_t StackCommit);
typedef void (*on_NtDebugActiveProcess_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ProcessHandle, uint32_t DebugObjectHandle);
typedef void (*on_NtDebugActiveProcess_return_t)(CPUState* cpu, target_ulong pc, uint32_t ProcessHandle, uint32_t DebugObjectHandle);
typedef void (*on_NtDebugContinue_enter_t)(CPUState* cpu, target_ulong pc, uint32_t DebugObjectHandle, uint32_t ClientId, uint32_t ContinueStatus);
typedef void (*on_NtDebugContinue_return_t)(CPUState* cpu, target_ulong pc, uint32_t DebugObjectHandle, uint32_t ClientId, uint32_t ContinueStatus);
typedef void (*on_NtDelayExecution_enter_t)(CPUState* cpu, target_ulong pc, uint32_t Alertable, uint32_t DelayInterval);
typedef void (*on_NtDelayExecution_return_t)(CPUState* cpu, target_ulong pc, uint32_t Alertable, uint32_t DelayInterval);
typedef void (*on_NtDeleteAtom_enter_t)(CPUState* cpu, target_ulong pc, uint32_t Atom);
typedef void (*on_NtDeleteAtom_return_t)(CPUState* cpu, target_ulong pc, uint32_t Atom);
typedef void (*on_NtDeleteBootEntry_enter_t)(CPUState* cpu, target_ulong pc, uint32_t Id);
typedef void (*on_NtDeleteBootEntry_return_t)(CPUState* cpu, target_ulong pc, uint32_t Id);
typedef void (*on_NtDeleteDriverEntry_enter_t)(CPUState* cpu, target_ulong pc, uint32_t Id);
typedef void (*on_NtDeleteDriverEntry_return_t)(CPUState* cpu, target_ulong pc, uint32_t Id);
typedef void (*on_NtDeleteFile_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ObjectAttributes);
typedef void (*on_NtDeleteFile_return_t)(CPUState* cpu, target_ulong pc, uint32_t ObjectAttributes);
typedef void (*on_NtDeleteKey_enter_t)(CPUState* cpu, target_ulong pc, uint32_t KeyHandle);
typedef void (*on_NtDeleteKey_return_t)(CPUState* cpu, target_ulong pc, uint32_t KeyHandle);
typedef void (*on_NtDeleteObjectAuditAlarm_enter_t)(CPUState* cpu, target_ulong pc, uint32_t SubsystemName, uint32_t HandleId, uint32_t GenerateOnClose);
typedef void (*on_NtDeleteObjectAuditAlarm_return_t)(CPUState* cpu, target_ulong pc, uint32_t SubsystemName, uint32_t HandleId, uint32_t GenerateOnClose);
typedef void (*on_NtDeletePrivateNamespace_enter_t)(CPUState* cpu, target_ulong pc, uint32_t NamespaceHandle);
typedef void (*on_NtDeletePrivateNamespace_return_t)(CPUState* cpu, target_ulong pc, uint32_t NamespaceHandle);
typedef void (*on_NtDeleteValueKey_enter_t)(CPUState* cpu, target_ulong pc, uint32_t KeyHandle, uint32_t ValueName);
typedef void (*on_NtDeleteValueKey_return_t)(CPUState* cpu, target_ulong pc, uint32_t KeyHandle, uint32_t ValueName);
typedef void (*on_NtDeviceIoControlFile_enter_t)(CPUState* cpu, target_ulong pc, uint32_t FileHandle, uint32_t Event, uint32_t ApcRoutine, uint32_t ApcContext, uint32_t IoStatusBlock, uint32_t IoControlCode, uint32_t InputBuffer, uint32_t InputBufferLength, uint32_t OutputBuffer, uint32_t OutputBufferLength);
typedef void (*on_NtDeviceIoControlFile_return_t)(CPUState* cpu, target_ulong pc, uint32_t FileHandle, uint32_t Event, uint32_t ApcRoutine, uint32_t ApcContext, uint32_t IoStatusBlock, uint32_t IoControlCode, uint32_t InputBuffer, uint32_t InputBufferLength, uint32_t OutputBuffer, uint32_t OutputBufferLength);
typedef void (*on_NtDisableLastKnownGood_enter_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_NtDisableLastKnownGood_return_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_NtDisplayString_enter_t)(CPUState* cpu, target_ulong pc, uint32_t String);
typedef void (*on_NtDisplayString_return_t)(CPUState* cpu, target_ulong pc, uint32_t String);
typedef void (*on_NtDrawText_enter_t)(CPUState* cpu, target_ulong pc, uint32_t Text);
typedef void (*on_NtDrawText_return_t)(CPUState* cpu, target_ulong pc, uint32_t Text);
typedef void (*on_NtDuplicateObject_enter_t)(CPUState* cpu, target_ulong pc, uint32_t SourceProcessHandle, uint32_t SourceHandle, uint32_t TargetProcessHandle, uint32_t TargetHandle, uint32_t DesiredAccess, uint32_t HandleAttributes, uint32_t Options);
typedef void (*on_NtDuplicateObject_return_t)(CPUState* cpu, target_ulong pc, uint32_t SourceProcessHandle, uint32_t SourceHandle, uint32_t TargetProcessHandle, uint32_t TargetHandle, uint32_t DesiredAccess, uint32_t HandleAttributes, uint32_t Options);
typedef void (*on_NtDuplicateToken_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ExistingTokenHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes, uint32_t EffectiveOnly, uint32_t TokenType, uint32_t NewTokenHandle);
typedef void (*on_NtDuplicateToken_return_t)(CPUState* cpu, target_ulong pc, uint32_t ExistingTokenHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes, uint32_t EffectiveOnly, uint32_t TokenType, uint32_t NewTokenHandle);
typedef void (*on_NtEnableLastKnownGood_enter_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_NtEnableLastKnownGood_return_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_NtEnumerateBootEntries_enter_t)(CPUState* cpu, target_ulong pc, uint32_t Buffer, uint32_t BufferLength);
typedef void (*on_NtEnumerateBootEntries_return_t)(CPUState* cpu, target_ulong pc, uint32_t Buffer, uint32_t BufferLength);
typedef void (*on_NtEnumerateDriverEntries_enter_t)(CPUState* cpu, target_ulong pc, uint32_t Buffer, uint32_t BufferLength);
typedef void (*on_NtEnumerateDriverEntries_return_t)(CPUState* cpu, target_ulong pc, uint32_t Buffer, uint32_t BufferLength);
typedef void (*on_NtEnumerateKey_enter_t)(CPUState* cpu, target_ulong pc, uint32_t KeyHandle, uint32_t Index, uint32_t KeyInformationClass, uint32_t KeyInformation, uint32_t Length, uint32_t ResultLength);
typedef void (*on_NtEnumerateKey_return_t)(CPUState* cpu, target_ulong pc, uint32_t KeyHandle, uint32_t Index, uint32_t KeyInformationClass, uint32_t KeyInformation, uint32_t Length, uint32_t ResultLength);
typedef void (*on_NtEnumerateSystemEnvironmentValuesEx_enter_t)(CPUState* cpu, target_ulong pc, uint32_t InformationClass, uint32_t Buffer, uint32_t BufferLength);
typedef void (*on_NtEnumerateSystemEnvironmentValuesEx_return_t)(CPUState* cpu, target_ulong pc, uint32_t InformationClass, uint32_t Buffer, uint32_t BufferLength);
typedef void (*on_NtEnumerateTransactionObject_enter_t)(CPUState* cpu, target_ulong pc, uint32_t RootObjectHandle, uint32_t QueryType, uint32_t ObjectCursor, uint32_t ObjectCursorLength, uint32_t ReturnLength);
typedef void (*on_NtEnumerateTransactionObject_return_t)(CPUState* cpu, target_ulong pc, uint32_t RootObjectHandle, uint32_t QueryType, uint32_t ObjectCursor, uint32_t ObjectCursorLength, uint32_t ReturnLength);
typedef void (*on_NtEnumerateValueKey_enter_t)(CPUState* cpu, target_ulong pc, uint32_t KeyHandle, uint32_t Index, uint32_t KeyValueInformationClass, uint32_t KeyValueInformation, uint32_t Length, uint32_t ResultLength);
typedef void (*on_NtEnumerateValueKey_return_t)(CPUState* cpu, target_ulong pc, uint32_t KeyHandle, uint32_t Index, uint32_t KeyValueInformationClass, uint32_t KeyValueInformation, uint32_t Length, uint32_t ResultLength);
typedef void (*on_NtExtendSection_enter_t)(CPUState* cpu, target_ulong pc, uint32_t SectionHandle, uint32_t NewSectionSize);
typedef void (*on_NtExtendSection_return_t)(CPUState* cpu, target_ulong pc, uint32_t SectionHandle, uint32_t NewSectionSize);
typedef void (*on_NtFilterToken_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ExistingTokenHandle, uint32_t Flags, uint32_t SidsToDisable, uint32_t PrivilegesToDelete, uint32_t RestrictedSids, uint32_t NewTokenHandle);
typedef void (*on_NtFilterToken_return_t)(CPUState* cpu, target_ulong pc, uint32_t ExistingTokenHandle, uint32_t Flags, uint32_t SidsToDisable, uint32_t PrivilegesToDelete, uint32_t RestrictedSids, uint32_t NewTokenHandle);
typedef void (*on_NtFindAtom_enter_t)(CPUState* cpu, target_ulong pc, uint32_t AtomName, uint32_t Length, uint32_t Atom);
typedef void (*on_NtFindAtom_return_t)(CPUState* cpu, target_ulong pc, uint32_t AtomName, uint32_t Length, uint32_t Atom);
typedef void (*on_NtFlushBuffersFile_enter_t)(CPUState* cpu, target_ulong pc, uint32_t FileHandle, uint32_t IoStatusBlock);
typedef void (*on_NtFlushBuffersFile_return_t)(CPUState* cpu, target_ulong pc, uint32_t FileHandle, uint32_t IoStatusBlock);
typedef void (*on_NtFlushInstallUILanguage_enter_t)(CPUState* cpu, target_ulong pc, uint32_t InstallUILanguage, uint32_t SetComittedFlag);
typedef void (*on_NtFlushInstallUILanguage_return_t)(CPUState* cpu, target_ulong pc, uint32_t InstallUILanguage, uint32_t SetComittedFlag);
typedef void (*on_NtFlushInstructionCache_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ProcessHandle, uint32_t BaseAddress, uint32_t Length);
typedef void (*on_NtFlushInstructionCache_return_t)(CPUState* cpu, target_ulong pc, uint32_t ProcessHandle, uint32_t BaseAddress, uint32_t Length);
typedef void (*on_NtFlushKey_enter_t)(CPUState* cpu, target_ulong pc, uint32_t KeyHandle);
typedef void (*on_NtFlushKey_return_t)(CPUState* cpu, target_ulong pc, uint32_t KeyHandle);
typedef void (*on_NtFlushProcessWriteBuffers_enter_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_NtFlushProcessWriteBuffers_return_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_NtFlushVirtualMemory_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ProcessHandle, uint32_t BaseAddress, uint32_t RegionSize, uint32_t IoStatus);
typedef void (*on_NtFlushVirtualMemory_return_t)(CPUState* cpu, target_ulong pc, uint32_t ProcessHandle, uint32_t BaseAddress, uint32_t RegionSize, uint32_t IoStatus);
typedef void (*on_NtFlushWriteBuffer_enter_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_NtFlushWriteBuffer_return_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_NtFreeUserPhysicalPages_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ProcessHandle, uint32_t NumberOfPages, uint32_t UserPfnArray);
typedef void (*on_NtFreeUserPhysicalPages_return_t)(CPUState* cpu, target_ulong pc, uint32_t ProcessHandle, uint32_t NumberOfPages, uint32_t UserPfnArray);
typedef void (*on_NtFreeVirtualMemory_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ProcessHandle, uint32_t BaseAddress, uint32_t RegionSize, uint32_t FreeType);
typedef void (*on_NtFreeVirtualMemory_return_t)(CPUState* cpu, target_ulong pc, uint32_t ProcessHandle, uint32_t BaseAddress, uint32_t RegionSize, uint32_t FreeType);
typedef void (*on_NtFreezeRegistry_enter_t)(CPUState* cpu, target_ulong pc, uint32_t TimeOutInSeconds);
typedef void (*on_NtFreezeRegistry_return_t)(CPUState* cpu, target_ulong pc, uint32_t TimeOutInSeconds);
typedef void (*on_NtFreezeTransactions_enter_t)(CPUState* cpu, target_ulong pc, uint32_t FreezeTimeout, uint32_t ThawTimeout);
typedef void (*on_NtFreezeTransactions_return_t)(CPUState* cpu, target_ulong pc, uint32_t FreezeTimeout, uint32_t ThawTimeout);
typedef void (*on_NtFsControlFile_enter_t)(CPUState* cpu, target_ulong pc, uint32_t FileHandle, uint32_t Event, uint32_t ApcRoutine, uint32_t ApcContext, uint32_t IoStatusBlock, uint32_t IoControlCode, uint32_t InputBuffer, uint32_t InputBufferLength, uint32_t OutputBuffer, uint32_t OutputBufferLength);
typedef void (*on_NtFsControlFile_return_t)(CPUState* cpu, target_ulong pc, uint32_t FileHandle, uint32_t Event, uint32_t ApcRoutine, uint32_t ApcContext, uint32_t IoStatusBlock, uint32_t IoControlCode, uint32_t InputBuffer, uint32_t InputBufferLength, uint32_t OutputBuffer, uint32_t OutputBufferLength);
typedef void (*on_NtGetContextThread_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ThreadHandle, uint32_t ThreadContext);
typedef void (*on_NtGetContextThread_return_t)(CPUState* cpu, target_ulong pc, uint32_t ThreadHandle, uint32_t ThreadContext);
typedef void (*on_NtGetCurrentProcessorNumber_enter_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_NtGetCurrentProcessorNumber_return_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_NtGetDevicePowerState_enter_t)(CPUState* cpu, target_ulong pc, uint32_t Device, uint32_t State);
typedef void (*on_NtGetDevicePowerState_return_t)(CPUState* cpu, target_ulong pc, uint32_t Device, uint32_t State);
typedef void (*on_NtGetMUIRegistryInfo_enter_t)(CPUState* cpu, target_ulong pc, uint32_t Flags, uint32_t DataSize, uint32_t Data);
typedef void (*on_NtGetMUIRegistryInfo_return_t)(CPUState* cpu, target_ulong pc, uint32_t Flags, uint32_t DataSize, uint32_t Data);
typedef void (*on_NtGetNextProcess_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ProcessHandle, uint32_t DesiredAccess, uint32_t HandleAttributes, uint32_t Flags, uint32_t NewProcessHandle);
typedef void (*on_NtGetNextProcess_return_t)(CPUState* cpu, target_ulong pc, uint32_t ProcessHandle, uint32_t DesiredAccess, uint32_t HandleAttributes, uint32_t Flags, uint32_t NewProcessHandle);
typedef void (*on_NtGetNextThread_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ProcessHandle, uint32_t ThreadHandle, uint32_t DesiredAccess, uint32_t HandleAttributes, uint32_t Flags, uint32_t NewThreadHandle);
typedef void (*on_NtGetNextThread_return_t)(CPUState* cpu, target_ulong pc, uint32_t ProcessHandle, uint32_t ThreadHandle, uint32_t DesiredAccess, uint32_t HandleAttributes, uint32_t Flags, uint32_t NewThreadHandle);
typedef void (*on_NtGetNlsSectionPtr_enter_t)(CPUState* cpu, target_ulong pc, uint32_t SectionType, uint32_t SectionData, uint32_t ContextData, uint32_t SectionPointer, uint32_t SectionSize);
typedef void (*on_NtGetNlsSectionPtr_return_t)(CPUState* cpu, target_ulong pc, uint32_t SectionType, uint32_t SectionData, uint32_t ContextData, uint32_t SectionPointer, uint32_t SectionSize);
typedef void (*on_NtGetNotificationResourceManager_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ResourceManagerHandle, uint32_t TransactionNotification, uint32_t NotificationLength, uint32_t Timeout, uint32_t ReturnLength, uint32_t Asynchronous, uint32_t AsynchronousContext);
typedef void (*on_NtGetNotificationResourceManager_return_t)(CPUState* cpu, target_ulong pc, uint32_t ResourceManagerHandle, uint32_t TransactionNotification, uint32_t NotificationLength, uint32_t Timeout, uint32_t ReturnLength, uint32_t Asynchronous, uint32_t AsynchronousContext);
typedef void (*on_NtGetPlugPlayEvent_enter_t)(CPUState* cpu, target_ulong pc, uint32_t EventHandle, uint32_t Context, uint32_t EventBlock, uint32_t EventBufferSize);
typedef void (*on_NtGetPlugPlayEvent_return_t)(CPUState* cpu, target_ulong pc, uint32_t EventHandle, uint32_t Context, uint32_t EventBlock, uint32_t EventBufferSize);
typedef void (*on_NtGetWriteWatch_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ProcessHandle, uint32_t Flags, uint32_t BaseAddress, uint32_t RegionSize, uint32_t UserAddressArray, uint32_t EntriesInUserAddressArray, uint32_t Granularity);
typedef void (*on_NtGetWriteWatch_return_t)(CPUState* cpu, target_ulong pc, uint32_t ProcessHandle, uint32_t Flags, uint32_t BaseAddress, uint32_t RegionSize, uint32_t UserAddressArray, uint32_t EntriesInUserAddressArray, uint32_t Granularity);
typedef void (*on_NtImpersonateAnonymousToken_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ThreadHandle);
typedef void (*on_NtImpersonateAnonymousToken_return_t)(CPUState* cpu, target_ulong pc, uint32_t ThreadHandle);
typedef void (*on_NtImpersonateClientOfPort_enter_t)(CPUState* cpu, target_ulong pc, uint32_t PortHandle, uint32_t Message);
typedef void (*on_NtImpersonateClientOfPort_return_t)(CPUState* cpu, target_ulong pc, uint32_t PortHandle, uint32_t Message);
typedef void (*on_NtImpersonateThread_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ServerThreadHandle, uint32_t ClientThreadHandle, uint32_t SecurityQos);
typedef void (*on_NtImpersonateThread_return_t)(CPUState* cpu, target_ulong pc, uint32_t ServerThreadHandle, uint32_t ClientThreadHandle, uint32_t SecurityQos);
typedef void (*on_NtInitializeNlsFiles_enter_t)(CPUState* cpu, target_ulong pc, uint32_t BaseAddress, uint32_t DefaultLocaleId, uint32_t DefaultCasingTableSize);
typedef void (*on_NtInitializeNlsFiles_return_t)(CPUState* cpu, target_ulong pc, uint32_t BaseAddress, uint32_t DefaultLocaleId, uint32_t DefaultCasingTableSize);
typedef void (*on_NtInitializeRegistry_enter_t)(CPUState* cpu, target_ulong pc, uint32_t BootCondition);
typedef void (*on_NtInitializeRegistry_return_t)(CPUState* cpu, target_ulong pc, uint32_t BootCondition);
typedef void (*on_NtInitiatePowerAction_enter_t)(CPUState* cpu, target_ulong pc, uint32_t SystemAction, uint32_t MinSystemState, uint32_t Flags, uint32_t Asynchronous);
typedef void (*on_NtInitiatePowerAction_return_t)(CPUState* cpu, target_ulong pc, uint32_t SystemAction, uint32_t MinSystemState, uint32_t Flags, uint32_t Asynchronous);
typedef void (*on_NtIsProcessInJob_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ProcessHandle, uint32_t JobHandle);
typedef void (*on_NtIsProcessInJob_return_t)(CPUState* cpu, target_ulong pc, uint32_t ProcessHandle, uint32_t JobHandle);
typedef void (*on_NtIsSystemResumeAutomatic_enter_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_NtIsSystemResumeAutomatic_return_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_NtIsUILanguageComitted_enter_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_NtIsUILanguageComitted_return_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_NtListenPort_enter_t)(CPUState* cpu, target_ulong pc, uint32_t PortHandle, uint32_t ConnectionRequest);
typedef void (*on_NtListenPort_return_t)(CPUState* cpu, target_ulong pc, uint32_t PortHandle, uint32_t ConnectionRequest);
typedef void (*on_NtLoadDriver_enter_t)(CPUState* cpu, target_ulong pc, uint32_t DriverServiceName);
typedef void (*on_NtLoadDriver_return_t)(CPUState* cpu, target_ulong pc, uint32_t DriverServiceName);
typedef void (*on_NtLoadKey_enter_t)(CPUState* cpu, target_ulong pc, uint32_t TargetKey, uint32_t SourceFile);
typedef void (*on_NtLoadKey_return_t)(CPUState* cpu, target_ulong pc, uint32_t TargetKey, uint32_t SourceFile);
typedef void (*on_NtLoadKey2_enter_t)(CPUState* cpu, target_ulong pc, uint32_t TargetKey, uint32_t SourceFile, uint32_t Flags);
typedef void (*on_NtLoadKey2_return_t)(CPUState* cpu, target_ulong pc, uint32_t TargetKey, uint32_t SourceFile, uint32_t Flags);
typedef void (*on_NtLoadKeyEx_enter_t)(CPUState* cpu, target_ulong pc, uint32_t TargetKey, uint32_t SourceFile, uint32_t Flags, uint32_t TrustClassKey);
typedef void (*on_NtLoadKeyEx_return_t)(CPUState* cpu, target_ulong pc, uint32_t TargetKey, uint32_t SourceFile, uint32_t Flags, uint32_t TrustClassKey);
typedef void (*on_NtLockFile_enter_t)(CPUState* cpu, target_ulong pc, uint32_t FileHandle, uint32_t Event, uint32_t ApcRoutine, uint32_t ApcContext, uint32_t IoStatusBlock, uint32_t ByteOffset, uint32_t Length, uint32_t Key, uint32_t FailImmediately, uint32_t ExclusiveLock);
typedef void (*on_NtLockFile_return_t)(CPUState* cpu, target_ulong pc, uint32_t FileHandle, uint32_t Event, uint32_t ApcRoutine, uint32_t ApcContext, uint32_t IoStatusBlock, uint32_t ByteOffset, uint32_t Length, uint32_t Key, uint32_t FailImmediately, uint32_t ExclusiveLock);
typedef void (*on_NtLockProductActivationKeys_enter_t)(CPUState* cpu, target_ulong pc, uint32_t pPrivateVer, uint32_t pSafeMode);
typedef void (*on_NtLockProductActivationKeys_return_t)(CPUState* cpu, target_ulong pc, uint32_t pPrivateVer, uint32_t pSafeMode);
typedef void (*on_NtLockRegistryKey_enter_t)(CPUState* cpu, target_ulong pc, uint32_t KeyHandle);
typedef void (*on_NtLockRegistryKey_return_t)(CPUState* cpu, target_ulong pc, uint32_t KeyHandle);
typedef void (*on_NtLockVirtualMemory_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ProcessHandle, uint32_t BaseAddress, uint32_t RegionSize, uint32_t MapType);
typedef void (*on_NtLockVirtualMemory_return_t)(CPUState* cpu, target_ulong pc, uint32_t ProcessHandle, uint32_t BaseAddress, uint32_t RegionSize, uint32_t MapType);
typedef void (*on_NtMakePermanentObject_enter_t)(CPUState* cpu, target_ulong pc, uint32_t Handle);
typedef void (*on_NtMakePermanentObject_return_t)(CPUState* cpu, target_ulong pc, uint32_t Handle);
typedef void (*on_NtMakeTemporaryObject_enter_t)(CPUState* cpu, target_ulong pc, uint32_t Handle);
typedef void (*on_NtMakeTemporaryObject_return_t)(CPUState* cpu, target_ulong pc, uint32_t Handle);
typedef void (*on_NtMapCMFModule_enter_t)(CPUState* cpu, target_ulong pc, uint32_t What, uint32_t Index, uint32_t CacheIndexOut, uint32_t CacheFlagsOut, uint32_t ViewSizeOut, uint32_t BaseAddress);
typedef void (*on_NtMapCMFModule_return_t)(CPUState* cpu, target_ulong pc, uint32_t What, uint32_t Index, uint32_t CacheIndexOut, uint32_t CacheFlagsOut, uint32_t ViewSizeOut, uint32_t BaseAddress);
typedef void (*on_NtMapUserPhysicalPages_enter_t)(CPUState* cpu, target_ulong pc, uint32_t VirtualAddress, uint32_t NumberOfPages, uint32_t UserPfnArray);
typedef void (*on_NtMapUserPhysicalPages_return_t)(CPUState* cpu, target_ulong pc, uint32_t VirtualAddress, uint32_t NumberOfPages, uint32_t UserPfnArray);
typedef void (*on_NtMapUserPhysicalPagesScatter_enter_t)(CPUState* cpu, target_ulong pc, uint32_t VirtualAddresses, uint32_t NumberOfPages, uint32_t UserPfnArray);
typedef void (*on_NtMapUserPhysicalPagesScatter_return_t)(CPUState* cpu, target_ulong pc, uint32_t VirtualAddresses, uint32_t NumberOfPages, uint32_t UserPfnArray);
typedef void (*on_NtMapViewOfSection_enter_t)(CPUState* cpu, target_ulong pc, uint32_t SectionHandle, uint32_t ProcessHandle, uint32_t BaseAddress, uint32_t ZeroBits, uint32_t CommitSize, uint32_t SectionOffset, uint32_t ViewSize, uint32_t InheritDisposition, uint32_t AllocationType, uint32_t Win32Protect);
typedef void (*on_NtMapViewOfSection_return_t)(CPUState* cpu, target_ulong pc, uint32_t SectionHandle, uint32_t ProcessHandle, uint32_t BaseAddress, uint32_t ZeroBits, uint32_t CommitSize, uint32_t SectionOffset, uint32_t ViewSize, uint32_t InheritDisposition, uint32_t AllocationType, uint32_t Win32Protect);
typedef void (*on_NtModifyBootEntry_enter_t)(CPUState* cpu, target_ulong pc, uint32_t BootEntry);
typedef void (*on_NtModifyBootEntry_return_t)(CPUState* cpu, target_ulong pc, uint32_t BootEntry);
typedef void (*on_NtModifyDriverEntry_enter_t)(CPUState* cpu, target_ulong pc, uint32_t DriverEntry);
typedef void (*on_NtModifyDriverEntry_return_t)(CPUState* cpu, target_ulong pc, uint32_t DriverEntry);
typedef void (*on_NtNotifyChangeDirectoryFile_enter_t)(CPUState* cpu, target_ulong pc, uint32_t FileHandle, uint32_t Event, uint32_t ApcRoutine, uint32_t ApcContext, uint32_t IoStatusBlock, uint32_t Buffer, uint32_t Length, uint32_t CompletionFilter, uint32_t WatchTree);
typedef void (*on_NtNotifyChangeDirectoryFile_return_t)(CPUState* cpu, target_ulong pc, uint32_t FileHandle, uint32_t Event, uint32_t ApcRoutine, uint32_t ApcContext, uint32_t IoStatusBlock, uint32_t Buffer, uint32_t Length, uint32_t CompletionFilter, uint32_t WatchTree);
typedef void (*on_NtNotifyChangeKey_enter_t)(CPUState* cpu, target_ulong pc, uint32_t KeyHandle, uint32_t Event, uint32_t ApcRoutine, uint32_t ApcContext, uint32_t IoStatusBlock, uint32_t CompletionFilter, uint32_t WatchTree, uint32_t Buffer, uint32_t BufferSize, uint32_t Asynchronous);
typedef void (*on_NtNotifyChangeKey_return_t)(CPUState* cpu, target_ulong pc, uint32_t KeyHandle, uint32_t Event, uint32_t ApcRoutine, uint32_t ApcContext, uint32_t IoStatusBlock, uint32_t CompletionFilter, uint32_t WatchTree, uint32_t Buffer, uint32_t BufferSize, uint32_t Asynchronous);
typedef void (*on_NtNotifyChangeMultipleKeys_enter_t)(CPUState* cpu, target_ulong pc, uint32_t MasterKeyHandle, uint32_t Count, uint32_t SlaveObjects, uint32_t Event, uint32_t ApcRoutine, uint32_t ApcContext, uint32_t IoStatusBlock, uint32_t CompletionFilter, uint32_t WatchTree, uint32_t Buffer, uint32_t BufferSize, uint32_t Asynchronous);
typedef void (*on_NtNotifyChangeMultipleKeys_return_t)(CPUState* cpu, target_ulong pc, uint32_t MasterKeyHandle, uint32_t Count, uint32_t SlaveObjects, uint32_t Event, uint32_t ApcRoutine, uint32_t ApcContext, uint32_t IoStatusBlock, uint32_t CompletionFilter, uint32_t WatchTree, uint32_t Buffer, uint32_t BufferSize, uint32_t Asynchronous);
typedef void (*on_NtNotifyChangeSession_enter_t)(CPUState* cpu, target_ulong pc, uint32_t Session, uint32_t IoStateSequence, uint32_t Reserved, uint32_t Action, uint32_t IoState, uint32_t IoState2, uint32_t Buffer, uint32_t BufferSize);
typedef void (*on_NtNotifyChangeSession_return_t)(CPUState* cpu, target_ulong pc, uint32_t Session, uint32_t IoStateSequence, uint32_t Reserved, uint32_t Action, uint32_t IoState, uint32_t IoState2, uint32_t Buffer, uint32_t BufferSize);
typedef void (*on_NtOpenDirectoryObject_enter_t)(CPUState* cpu, target_ulong pc, uint32_t DirectoryHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes);
typedef void (*on_NtOpenDirectoryObject_return_t)(CPUState* cpu, target_ulong pc, uint32_t DirectoryHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes);
typedef void (*on_NtOpenEnlistment_enter_t)(CPUState* cpu, target_ulong pc, uint32_t EnlistmentHandle, uint32_t DesiredAccess, uint32_t ResourceManagerHandle, uint32_t EnlistmentGuid, uint32_t ObjectAttributes);
typedef void (*on_NtOpenEnlistment_return_t)(CPUState* cpu, target_ulong pc, uint32_t EnlistmentHandle, uint32_t DesiredAccess, uint32_t ResourceManagerHandle, uint32_t EnlistmentGuid, uint32_t ObjectAttributes);
typedef void (*on_NtOpenEvent_enter_t)(CPUState* cpu, target_ulong pc, uint32_t EventHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes);
typedef void (*on_NtOpenEvent_return_t)(CPUState* cpu, target_ulong pc, uint32_t EventHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes);
typedef void (*on_NtOpenEventPair_enter_t)(CPUState* cpu, target_ulong pc, uint32_t EventPairHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes);
typedef void (*on_NtOpenEventPair_return_t)(CPUState* cpu, target_ulong pc, uint32_t EventPairHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes);
typedef void (*on_NtOpenFile_enter_t)(CPUState* cpu, target_ulong pc, uint32_t FileHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes, uint32_t IoStatusBlock, uint32_t ShareAccess, uint32_t OpenOptions);
typedef void (*on_NtOpenFile_return_t)(CPUState* cpu, target_ulong pc, uint32_t FileHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes, uint32_t IoStatusBlock, uint32_t ShareAccess, uint32_t OpenOptions);
typedef void (*on_NtOpenIoCompletion_enter_t)(CPUState* cpu, target_ulong pc, uint32_t IoCompletionHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes);
typedef void (*on_NtOpenIoCompletion_return_t)(CPUState* cpu, target_ulong pc, uint32_t IoCompletionHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes);
typedef void (*on_NtOpenJobObject_enter_t)(CPUState* cpu, target_ulong pc, uint32_t JobHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes);
typedef void (*on_NtOpenJobObject_return_t)(CPUState* cpu, target_ulong pc, uint32_t JobHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes);
typedef void (*on_NtOpenKey_enter_t)(CPUState* cpu, target_ulong pc, uint32_t KeyHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes);
typedef void (*on_NtOpenKey_return_t)(CPUState* cpu, target_ulong pc, uint32_t KeyHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes);
typedef void (*on_NtOpenKeyedEvent_enter_t)(CPUState* cpu, target_ulong pc, uint32_t KeyedEventHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes);
typedef void (*on_NtOpenKeyedEvent_return_t)(CPUState* cpu, target_ulong pc, uint32_t KeyedEventHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes);
typedef void (*on_NtOpenKeyEx_enter_t)(CPUState* cpu, target_ulong pc, uint32_t KeyHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes, uint32_t OpenOptions);
typedef void (*on_NtOpenKeyEx_return_t)(CPUState* cpu, target_ulong pc, uint32_t KeyHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes, uint32_t OpenOptions);
typedef void (*on_NtOpenKeyTransacted_enter_t)(CPUState* cpu, target_ulong pc, uint32_t KeyHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes, uint32_t TransactionHandle);
typedef void (*on_NtOpenKeyTransacted_return_t)(CPUState* cpu, target_ulong pc, uint32_t KeyHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes, uint32_t TransactionHandle);
typedef void (*on_NtOpenKeyTransactedEx_enter_t)(CPUState* cpu, target_ulong pc, uint32_t KeyHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes, uint32_t OpenOptions, uint32_t TransactionHandle);
typedef void (*on_NtOpenKeyTransactedEx_return_t)(CPUState* cpu, target_ulong pc, uint32_t KeyHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes, uint32_t OpenOptions, uint32_t TransactionHandle);
typedef void (*on_NtOpenMutant_enter_t)(CPUState* cpu, target_ulong pc, uint32_t MutantHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes);
typedef void (*on_NtOpenMutant_return_t)(CPUState* cpu, target_ulong pc, uint32_t MutantHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes);
typedef void (*on_NtOpenObjectAuditAlarm_enter_t)(CPUState* cpu, target_ulong pc, uint32_t SubsystemName, uint32_t HandleId, uint32_t ObjectTypeName, uint32_t ObjectName, uint32_t SecurityDescriptor, uint32_t ClientToken, uint32_t DesiredAccess, uint32_t GrantedAccess, uint32_t Privileges, uint32_t ObjectCreation, uint32_t AccessGranted, uint32_t GenerateOnClose);
typedef void (*on_NtOpenObjectAuditAlarm_return_t)(CPUState* cpu, target_ulong pc, uint32_t SubsystemName, uint32_t HandleId, uint32_t ObjectTypeName, uint32_t ObjectName, uint32_t SecurityDescriptor, uint32_t ClientToken, uint32_t DesiredAccess, uint32_t GrantedAccess, uint32_t Privileges, uint32_t ObjectCreation, uint32_t AccessGranted, uint32_t GenerateOnClose);
typedef void (*on_NtOpenPrivateNamespace_enter_t)(CPUState* cpu, target_ulong pc, uint32_t NamespaceHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes, uint32_t BoundaryDescriptor);
typedef void (*on_NtOpenPrivateNamespace_return_t)(CPUState* cpu, target_ulong pc, uint32_t NamespaceHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes, uint32_t BoundaryDescriptor);
typedef void (*on_NtOpenProcess_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ProcessHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes, uint32_t ClientId);
typedef void (*on_NtOpenProcess_return_t)(CPUState* cpu, target_ulong pc, uint32_t ProcessHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes, uint32_t ClientId);
typedef void (*on_NtOpenProcessToken_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ProcessHandle, uint32_t DesiredAccess, uint32_t TokenHandle);
typedef void (*on_NtOpenProcessToken_return_t)(CPUState* cpu, target_ulong pc, uint32_t ProcessHandle, uint32_t DesiredAccess, uint32_t TokenHandle);
typedef void (*on_NtOpenProcessTokenEx_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ProcessHandle, uint32_t DesiredAccess, uint32_t HandleAttributes, uint32_t TokenHandle);
typedef void (*on_NtOpenProcessTokenEx_return_t)(CPUState* cpu, target_ulong pc, uint32_t ProcessHandle, uint32_t DesiredAccess, uint32_t HandleAttributes, uint32_t TokenHandle);
typedef void (*on_NtOpenResourceManager_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ResourceManagerHandle, uint32_t DesiredAccess, uint32_t TmHandle, uint32_t ResourceManagerGuid, uint32_t ObjectAttributes);
typedef void (*on_NtOpenResourceManager_return_t)(CPUState* cpu, target_ulong pc, uint32_t ResourceManagerHandle, uint32_t DesiredAccess, uint32_t TmHandle, uint32_t ResourceManagerGuid, uint32_t ObjectAttributes);
typedef void (*on_NtOpenSection_enter_t)(CPUState* cpu, target_ulong pc, uint32_t SectionHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes);
typedef void (*on_NtOpenSection_return_t)(CPUState* cpu, target_ulong pc, uint32_t SectionHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes);
typedef void (*on_NtOpenSemaphore_enter_t)(CPUState* cpu, target_ulong pc, uint32_t SemaphoreHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes);
typedef void (*on_NtOpenSemaphore_return_t)(CPUState* cpu, target_ulong pc, uint32_t SemaphoreHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes);
typedef void (*on_NtOpenSession_enter_t)(CPUState* cpu, target_ulong pc, uint32_t SessionHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes);
typedef void (*on_NtOpenSession_return_t)(CPUState* cpu, target_ulong pc, uint32_t SessionHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes);
typedef void (*on_NtOpenSymbolicLinkObject_enter_t)(CPUState* cpu, target_ulong pc, uint32_t LinkHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes);
typedef void (*on_NtOpenSymbolicLinkObject_return_t)(CPUState* cpu, target_ulong pc, uint32_t LinkHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes);
typedef void (*on_NtOpenThread_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ThreadHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes, uint32_t ClientId);
typedef void (*on_NtOpenThread_return_t)(CPUState* cpu, target_ulong pc, uint32_t ThreadHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes, uint32_t ClientId);
typedef void (*on_NtOpenThreadToken_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ThreadHandle, uint32_t DesiredAccess, uint32_t OpenAsSelf, uint32_t TokenHandle);
typedef void (*on_NtOpenThreadToken_return_t)(CPUState* cpu, target_ulong pc, uint32_t ThreadHandle, uint32_t DesiredAccess, uint32_t OpenAsSelf, uint32_t TokenHandle);
typedef void (*on_NtOpenThreadTokenEx_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ThreadHandle, uint32_t DesiredAccess, uint32_t OpenAsSelf, uint32_t HandleAttributes, uint32_t TokenHandle);
typedef void (*on_NtOpenThreadTokenEx_return_t)(CPUState* cpu, target_ulong pc, uint32_t ThreadHandle, uint32_t DesiredAccess, uint32_t OpenAsSelf, uint32_t HandleAttributes, uint32_t TokenHandle);
typedef void (*on_NtOpenTimer_enter_t)(CPUState* cpu, target_ulong pc, uint32_t TimerHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes);
typedef void (*on_NtOpenTimer_return_t)(CPUState* cpu, target_ulong pc, uint32_t TimerHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes);
typedef void (*on_NtOpenTransaction_enter_t)(CPUState* cpu, target_ulong pc, uint32_t TransactionHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes, uint32_t Uow, uint32_t TmHandle);
typedef void (*on_NtOpenTransaction_return_t)(CPUState* cpu, target_ulong pc, uint32_t TransactionHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes, uint32_t Uow, uint32_t TmHandle);
typedef void (*on_NtOpenTransactionManager_enter_t)(CPUState* cpu, target_ulong pc, uint32_t TmHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes, uint32_t LogFileName, uint32_t TmIdentity, uint32_t OpenOptions);
typedef void (*on_NtOpenTransactionManager_return_t)(CPUState* cpu, target_ulong pc, uint32_t TmHandle, uint32_t DesiredAccess, uint32_t ObjectAttributes, uint32_t LogFileName, uint32_t TmIdentity, uint32_t OpenOptions);
typedef void (*on_NtPlugPlayControl_enter_t)(CPUState* cpu, target_ulong pc, uint32_t PnPControlClass, uint32_t PnPControlData, uint32_t PnPControlDataLength);
typedef void (*on_NtPlugPlayControl_return_t)(CPUState* cpu, target_ulong pc, uint32_t PnPControlClass, uint32_t PnPControlData, uint32_t PnPControlDataLength);
typedef void (*on_NtPowerInformation_enter_t)(CPUState* cpu, target_ulong pc, uint32_t InformationLevel, uint32_t InputBuffer, uint32_t InputBufferLength, uint32_t OutputBuffer, uint32_t OutputBufferLength);
typedef void (*on_NtPowerInformation_return_t)(CPUState* cpu, target_ulong pc, uint32_t InformationLevel, uint32_t InputBuffer, uint32_t InputBufferLength, uint32_t OutputBuffer, uint32_t OutputBufferLength);
typedef void (*on_NtPrepareComplete_enter_t)(CPUState* cpu, target_ulong pc, uint32_t EnlistmentHandle, uint32_t TmVirtualClock);
typedef void (*on_NtPrepareComplete_return_t)(CPUState* cpu, target_ulong pc, uint32_t EnlistmentHandle, uint32_t TmVirtualClock);
typedef void (*on_NtPrepareEnlistment_enter_t)(CPUState* cpu, target_ulong pc, uint32_t EnlistmentHandle, uint32_t TmVirtualClock);
typedef void (*on_NtPrepareEnlistment_return_t)(CPUState* cpu, target_ulong pc, uint32_t EnlistmentHandle, uint32_t TmVirtualClock);
typedef void (*on_NtPrePrepareComplete_enter_t)(CPUState* cpu, target_ulong pc, uint32_t EnlistmentHandle, uint32_t TmVirtualClock);
typedef void (*on_NtPrePrepareComplete_return_t)(CPUState* cpu, target_ulong pc, uint32_t EnlistmentHandle, uint32_t TmVirtualClock);
typedef void (*on_NtPrePrepareEnlistment_enter_t)(CPUState* cpu, target_ulong pc, uint32_t EnlistmentHandle, uint32_t TmVirtualClock);
typedef void (*on_NtPrePrepareEnlistment_return_t)(CPUState* cpu, target_ulong pc, uint32_t EnlistmentHandle, uint32_t TmVirtualClock);
typedef void (*on_NtPrivilegeCheck_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ClientToken, uint32_t RequiredPrivileges, uint32_t Result);
typedef void (*on_NtPrivilegeCheck_return_t)(CPUState* cpu, target_ulong pc, uint32_t ClientToken, uint32_t RequiredPrivileges, uint32_t Result);
typedef void (*on_NtPrivilegedServiceAuditAlarm_enter_t)(CPUState* cpu, target_ulong pc, uint32_t SubsystemName, uint32_t ServiceName, uint32_t ClientToken, uint32_t Privileges, uint32_t AccessGranted);
typedef void (*on_NtPrivilegedServiceAuditAlarm_return_t)(CPUState* cpu, target_ulong pc, uint32_t SubsystemName, uint32_t ServiceName, uint32_t ClientToken, uint32_t Privileges, uint32_t AccessGranted);
typedef void (*on_NtPrivilegeObjectAuditAlarm_enter_t)(CPUState* cpu, target_ulong pc, uint32_t SubsystemName, uint32_t HandleId, uint32_t ClientToken, uint32_t DesiredAccess, uint32_t Privileges, uint32_t AccessGranted);
typedef void (*on_NtPrivilegeObjectAuditAlarm_return_t)(CPUState* cpu, target_ulong pc, uint32_t SubsystemName, uint32_t HandleId, uint32_t ClientToken, uint32_t DesiredAccess, uint32_t Privileges, uint32_t AccessGranted);
typedef void (*on_NtPropagationComplete_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ResourceManagerHandle, uint32_t RequestCookie, uint32_t BufferLength, uint32_t Buffer);
typedef void (*on_NtPropagationComplete_return_t)(CPUState* cpu, target_ulong pc, uint32_t ResourceManagerHandle, uint32_t RequestCookie, uint32_t BufferLength, uint32_t Buffer);
typedef void (*on_NtPropagationFailed_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ResourceManagerHandle, uint32_t RequestCookie, uint32_t PropStatus);
typedef void (*on_NtPropagationFailed_return_t)(CPUState* cpu, target_ulong pc, uint32_t ResourceManagerHandle, uint32_t RequestCookie, uint32_t PropStatus);
typedef void (*on_NtProtectVirtualMemory_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ProcessHandle, uint32_t BaseAddress, uint32_t RegionSize, uint32_t NewProtectWin32, uint32_t OldProtect);
typedef void (*on_NtProtectVirtualMemory_return_t)(CPUState* cpu, target_ulong pc, uint32_t ProcessHandle, uint32_t BaseAddress, uint32_t RegionSize, uint32_t NewProtectWin32, uint32_t OldProtect);
typedef void (*on_NtPulseEvent_enter_t)(CPUState* cpu, target_ulong pc, uint32_t EventHandle, uint32_t PreviousState);
typedef void (*on_NtPulseEvent_return_t)(CPUState* cpu, target_ulong pc, uint32_t EventHandle, uint32_t PreviousState);
typedef void (*on_NtQueryAttributesFile_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ObjectAttributes, uint32_t FileInformation);
typedef void (*on_NtQueryAttributesFile_return_t)(CPUState* cpu, target_ulong pc, uint32_t ObjectAttributes, uint32_t FileInformation);
typedef void (*on_NtQueryBootEntryOrder_enter_t)(CPUState* cpu, target_ulong pc, uint32_t Ids, uint32_t Count);
typedef void (*on_NtQueryBootEntryOrder_return_t)(CPUState* cpu, target_ulong pc, uint32_t Ids, uint32_t Count);
typedef void (*on_NtQueryBootOptions_enter_t)(CPUState* cpu, target_ulong pc, uint32_t BootOptions, uint32_t BootOptionsLength);
typedef void (*on_NtQueryBootOptions_return_t)(CPUState* cpu, target_ulong pc, uint32_t BootOptions, uint32_t BootOptionsLength);
typedef void (*on_NtQueryDebugFilterState_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ComponentId, uint32_t Level);
typedef void (*on_NtQueryDebugFilterState_return_t)(CPUState* cpu, target_ulong pc, uint32_t ComponentId, uint32_t Level);
typedef void (*on_NtQueryDefaultLocale_enter_t)(CPUState* cpu, target_ulong pc, uint32_t UserProfile, uint32_t DefaultLocaleId);
typedef void (*on_NtQueryDefaultLocale_return_t)(CPUState* cpu, target_ulong pc, uint32_t UserProfile, uint32_t DefaultLocaleId);
typedef void (*on_NtQueryDefaultUILanguage_enter_t)(CPUState* cpu, target_ulong pc, uint32_t DefaultUILanguageId);
typedef void (*on_NtQueryDefaultUILanguage_return_t)(CPUState* cpu, target_ulong pc, uint32_t DefaultUILanguageId);
typedef void (*on_NtQueryDirectoryFile_enter_t)(CPUState* cpu, target_ulong pc, uint32_t FileHandle, uint32_t Event, uint32_t ApcRoutine, uint32_t ApcContext, uint32_t IoStatusBlock, uint32_t FileInformation, uint32_t Length, uint32_t FileInformationClass, uint32_t ReturnSingleEntry, uint32_t FileName, uint32_t RestartScan);
typedef void (*on_NtQueryDirectoryFile_return_t)(CPUState* cpu, target_ulong pc, uint32_t FileHandle, uint32_t Event, uint32_t ApcRoutine, uint32_t ApcContext, uint32_t IoStatusBlock, uint32_t FileInformation, uint32_t Length, uint32_t FileInformationClass, uint32_t ReturnSingleEntry, uint32_t FileName, uint32_t RestartScan);
typedef void (*on_NtQueryDirectoryObject_enter_t)(CPUState* cpu, target_ulong pc, uint32_t DirectoryHandle, uint32_t Buffer, uint32_t Length, uint32_t ReturnSingleEntry, uint32_t RestartScan, uint32_t Context, uint32_t ReturnLength);
typedef void (*on_NtQueryDirectoryObject_return_t)(CPUState* cpu, target_ulong pc, uint32_t DirectoryHandle, uint32_t Buffer, uint32_t Length, uint32_t ReturnSingleEntry, uint32_t RestartScan, uint32_t Context, uint32_t ReturnLength);
typedef void (*on_NtQueryDriverEntryOrder_enter_t)(CPUState* cpu, target_ulong pc, uint32_t Ids, uint32_t Count);
typedef void (*on_NtQueryDriverEntryOrder_return_t)(CPUState* cpu, target_ulong pc, uint32_t Ids, uint32_t Count);
typedef void (*on_NtQueryEaFile_enter_t)(CPUState* cpu, target_ulong pc, uint32_t FileHandle, uint32_t IoStatusBlock, uint32_t Buffer, uint32_t Length, uint32_t ReturnSingleEntry, uint32_t EaList, uint32_t EaListLength, uint32_t EaIndex, uint32_t RestartScan);
typedef void (*on_NtQueryEaFile_return_t)(CPUState* cpu, target_ulong pc, uint32_t FileHandle, uint32_t IoStatusBlock, uint32_t Buffer, uint32_t Length, uint32_t ReturnSingleEntry, uint32_t EaList, uint32_t EaListLength, uint32_t EaIndex, uint32_t RestartScan);
typedef void (*on_NtQueryEvent_enter_t)(CPUState* cpu, target_ulong pc, uint32_t EventHandle, uint32_t EventInformationClass, uint32_t EventInformation, uint32_t EventInformationLength, uint32_t ReturnLength);
typedef void (*on_NtQueryEvent_return_t)(CPUState* cpu, target_ulong pc, uint32_t EventHandle, uint32_t EventInformationClass, uint32_t EventInformation, uint32_t EventInformationLength, uint32_t ReturnLength);
typedef void (*on_NtQueryFullAttributesFile_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ObjectAttributes, uint32_t FileInformation);
typedef void (*on_NtQueryFullAttributesFile_return_t)(CPUState* cpu, target_ulong pc, uint32_t ObjectAttributes, uint32_t FileInformation);
typedef void (*on_NtQueryInformationAtom_enter_t)(CPUState* cpu, target_ulong pc, uint32_t Atom, uint32_t InformationClass, uint32_t AtomInformation, uint32_t AtomInformationLength, uint32_t ReturnLength);
typedef void (*on_NtQueryInformationAtom_return_t)(CPUState* cpu, target_ulong pc, uint32_t Atom, uint32_t InformationClass, uint32_t AtomInformation, uint32_t AtomInformationLength, uint32_t ReturnLength);
typedef void (*on_NtQueryInformationEnlistment_enter_t)(CPUState* cpu, target_ulong pc, uint32_t EnlistmentHandle, uint32_t EnlistmentInformationClass, uint32_t EnlistmentInformation, uint32_t EnlistmentInformationLength, uint32_t ReturnLength);
typedef void (*on_NtQueryInformationEnlistment_return_t)(CPUState* cpu, target_ulong pc, uint32_t EnlistmentHandle, uint32_t EnlistmentInformationClass, uint32_t EnlistmentInformation, uint32_t EnlistmentInformationLength, uint32_t ReturnLength);
typedef void (*on_NtQueryInformationFile_enter_t)(CPUState* cpu, target_ulong pc, uint32_t FileHandle, uint32_t IoStatusBlock, uint32_t FileInformation, uint32_t Length, uint32_t FileInformationClass);
typedef void (*on_NtQueryInformationFile_return_t)(CPUState* cpu, target_ulong pc, uint32_t FileHandle, uint32_t IoStatusBlock, uint32_t FileInformation, uint32_t Length, uint32_t FileInformationClass);
typedef void (*on_NtQueryInformationJobObject_enter_t)(CPUState* cpu, target_ulong pc, uint32_t JobHandle, uint32_t JobObjectInformationClass, uint32_t JobObjectInformation, uint32_t JobObjectInformationLength, uint32_t ReturnLength);
typedef void (*on_NtQueryInformationJobObject_return_t)(CPUState* cpu, target_ulong pc, uint32_t JobHandle, uint32_t JobObjectInformationClass, uint32_t JobObjectInformation, uint32_t JobObjectInformationLength, uint32_t ReturnLength);
typedef void (*on_NtQueryInformationPort_enter_t)(CPUState* cpu, target_ulong pc, uint32_t PortHandle, uint32_t PortInformationClass, uint32_t PortInformation, uint32_t Length, uint32_t ReturnLength);
typedef void (*on_NtQueryInformationPort_return_t)(CPUState* cpu, target_ulong pc, uint32_t PortHandle, uint32_t PortInformationClass, uint32_t PortInformation, uint32_t Length, uint32_t ReturnLength);
typedef void (*on_NtQueryInformationProcess_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ProcessHandle, uint32_t ProcessInformationClass, uint32_t ProcessInformation, uint32_t ProcessInformationLength, uint32_t ReturnLength);
typedef void (*on_NtQueryInformationProcess_return_t)(CPUState* cpu, target_ulong pc, uint32_t ProcessHandle, uint32_t ProcessInformationClass, uint32_t ProcessInformation, uint32_t ProcessInformationLength, uint32_t ReturnLength);
typedef void (*on_NtQueryInformationResourceManager_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ResourceManagerHandle, uint32_t ResourceManagerInformationClass, uint32_t ResourceManagerInformation, uint32_t ResourceManagerInformationLength, uint32_t ReturnLength);
typedef void (*on_NtQueryInformationResourceManager_return_t)(CPUState* cpu, target_ulong pc, uint32_t ResourceManagerHandle, uint32_t ResourceManagerInformationClass, uint32_t ResourceManagerInformation, uint32_t ResourceManagerInformationLength, uint32_t ReturnLength);
typedef void (*on_NtQueryInformationThread_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ThreadHandle, uint32_t ThreadInformationClass, uint32_t ThreadInformation, uint32_t ThreadInformationLength, uint32_t ReturnLength);
typedef void (*on_NtQueryInformationThread_return_t)(CPUState* cpu, target_ulong pc, uint32_t ThreadHandle, uint32_t ThreadInformationClass, uint32_t ThreadInformation, uint32_t ThreadInformationLength, uint32_t ReturnLength);
typedef void (*on_NtQueryInformationToken_enter_t)(CPUState* cpu, target_ulong pc, uint32_t TokenHandle, uint32_t TokenInformationClass, uint32_t TokenInformation, uint32_t TokenInformationLength, uint32_t ReturnLength);
typedef void (*on_NtQueryInformationToken_return_t)(CPUState* cpu, target_ulong pc, uint32_t TokenHandle, uint32_t TokenInformationClass, uint32_t TokenInformation, uint32_t TokenInformationLength, uint32_t ReturnLength);
typedef void (*on_NtQueryInformationTransaction_enter_t)(CPUState* cpu, target_ulong pc, uint32_t TransactionHandle, uint32_t TransactionInformationClass, uint32_t TransactionInformation, uint32_t TransactionInformationLength, uint32_t ReturnLength);
typedef void (*on_NtQueryInformationTransaction_return_t)(CPUState* cpu, target_ulong pc, uint32_t TransactionHandle, uint32_t TransactionInformationClass, uint32_t TransactionInformation, uint32_t TransactionInformationLength, uint32_t ReturnLength);
typedef void (*on_NtQueryInformationTransactionManager_enter_t)(CPUState* cpu, target_ulong pc, uint32_t TransactionManagerHandle, uint32_t TransactionManagerInformationClass, uint32_t TransactionManagerInformation, uint32_t TransactionManagerInformationLength, uint32_t ReturnLength);
typedef void (*on_NtQueryInformationTransactionManager_return_t)(CPUState* cpu, target_ulong pc, uint32_t TransactionManagerHandle, uint32_t TransactionManagerInformationClass, uint32_t TransactionManagerInformation, uint32_t TransactionManagerInformationLength, uint32_t ReturnLength);
typedef void (*on_NtQueryInformationWorkerFactory_enter_t)(CPUState* cpu, target_ulong pc, uint32_t WorkerFactoryHandle, uint32_t WorkerFactoryInformationClass, uint32_t WorkerFactoryInformation, uint32_t WorkerFactoryInformationLength, uint32_t ReturnLength);
typedef void (*on_NtQueryInformationWorkerFactory_return_t)(CPUState* cpu, target_ulong pc, uint32_t WorkerFactoryHandle, uint32_t WorkerFactoryInformationClass, uint32_t WorkerFactoryInformation, uint32_t WorkerFactoryInformationLength, uint32_t ReturnLength);
typedef void (*on_NtQueryInstallUILanguage_enter_t)(CPUState* cpu, target_ulong pc, uint32_t InstallUILanguageId);
typedef void (*on_NtQueryInstallUILanguage_return_t)(CPUState* cpu, target_ulong pc, uint32_t InstallUILanguageId);
typedef void (*on_NtQueryIntervalProfile_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ProfileSource, uint32_t Interval);
typedef void (*on_NtQueryIntervalProfile_return_t)(CPUState* cpu, target_ulong pc, uint32_t ProfileSource, uint32_t Interval);
typedef void (*on_NtQueryIoCompletion_enter_t)(CPUState* cpu, target_ulong pc, uint32_t IoCompletionHandle, uint32_t IoCompletionInformationClass, uint32_t IoCompletionInformation, uint32_t IoCompletionInformationLength, uint32_t ReturnLength);
typedef void (*on_NtQueryIoCompletion_return_t)(CPUState* cpu, target_ulong pc, uint32_t IoCompletionHandle, uint32_t IoCompletionInformationClass, uint32_t IoCompletionInformation, uint32_t IoCompletionInformationLength, uint32_t ReturnLength);
typedef void (*on_NtQueryKey_enter_t)(CPUState* cpu, target_ulong pc, uint32_t KeyHandle, uint32_t KeyInformationClass, uint32_t KeyInformation, uint32_t Length, uint32_t ResultLength);
typedef void (*on_NtQueryKey_return_t)(CPUState* cpu, target_ulong pc, uint32_t KeyHandle, uint32_t KeyInformationClass, uint32_t KeyInformation, uint32_t Length, uint32_t ResultLength);
typedef void (*on_NtQueryLicenseValue_enter_t)(CPUState* cpu, target_ulong pc, uint32_t Name, uint32_t Type, uint32_t Buffer, uint32_t Length, uint32_t ReturnedLength);
typedef void (*on_NtQueryLicenseValue_return_t)(CPUState* cpu, target_ulong pc, uint32_t Name, uint32_t Type, uint32_t Buffer, uint32_t Length, uint32_t ReturnedLength);
typedef void (*on_NtQueryMultipleValueKey_enter_t)(CPUState* cpu, target_ulong pc, uint32_t KeyHandle, uint32_t ValueEntries, uint32_t EntryCount, uint32_t ValueBuffer, uint32_t BufferLength, uint32_t RequiredBufferLength);
typedef void (*on_NtQueryMultipleValueKey_return_t)(CPUState* cpu, target_ulong pc, uint32_t KeyHandle, uint32_t ValueEntries, uint32_t EntryCount, uint32_t ValueBuffer, uint32_t BufferLength, uint32_t RequiredBufferLength);
typedef void (*on_NtQueryMutant_enter_t)(CPUState* cpu, target_ulong pc, uint32_t MutantHandle, uint32_t MutantInformationClass, uint32_t MutantInformation, uint32_t MutantInformationLength, uint32_t ReturnLength);
typedef void (*on_NtQueryMutant_return_t)(CPUState* cpu, target_ulong pc, uint32_t MutantHandle, uint32_t MutantInformationClass, uint32_t MutantInformation, uint32_t MutantInformationLength, uint32_t ReturnLength);
typedef void (*on_NtQueryObject_enter_t)(CPUState* cpu, target_ulong pc, uint32_t Handle, uint32_t ObjectInformationClass, uint32_t ObjectInformation, uint32_t ObjectInformationLength, uint32_t ReturnLength);
typedef void (*on_NtQueryObject_return_t)(CPUState* cpu, target_ulong pc, uint32_t Handle, uint32_t ObjectInformationClass, uint32_t ObjectInformation, uint32_t ObjectInformationLength, uint32_t ReturnLength);
typedef void (*on_NtQueryOpenSubKeys_enter_t)(CPUState* cpu, target_ulong pc, uint32_t TargetKey, uint32_t HandleCount);
typedef void (*on_NtQueryOpenSubKeys_return_t)(CPUState* cpu, target_ulong pc, uint32_t TargetKey, uint32_t HandleCount);
typedef void (*on_NtQueryOpenSubKeysEx_enter_t)(CPUState* cpu, target_ulong pc, uint32_t TargetKey, uint32_t BufferLength, uint32_t Buffer, uint32_t RequiredSize);
typedef void (*on_NtQueryOpenSubKeysEx_return_t)(CPUState* cpu, target_ulong pc, uint32_t TargetKey, uint32_t BufferLength, uint32_t Buffer, uint32_t RequiredSize);
typedef void (*on_NtQueryPerformanceCounter_enter_t)(CPUState* cpu, target_ulong pc, uint32_t PerformanceCounter, uint32_t PerformanceFrequency);
typedef void (*on_NtQueryPerformanceCounter_return_t)(CPUState* cpu, target_ulong pc, uint32_t PerformanceCounter, uint32_t PerformanceFrequency);
typedef void (*on_NtQueryPortInformationProcess_enter_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_NtQueryPortInformationProcess_return_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_NtQueryQuotaInformationFile_enter_t)(CPUState* cpu, target_ulong pc, uint32_t FileHandle, uint32_t IoStatusBlock, uint32_t Buffer, uint32_t Length, uint32_t ReturnSingleEntry, uint32_t SidList, uint32_t SidListLength, uint32_t StartSid, uint32_t RestartScan);
typedef void (*on_NtQueryQuotaInformationFile_return_t)(CPUState* cpu, target_ulong pc, uint32_t FileHandle, uint32_t IoStatusBlock, uint32_t Buffer, uint32_t Length, uint32_t ReturnSingleEntry, uint32_t SidList, uint32_t SidListLength, uint32_t StartSid, uint32_t RestartScan);
typedef void (*on_NtQuerySection_enter_t)(CPUState* cpu, target_ulong pc, uint32_t SectionHandle, uint32_t SectionInformationClass, uint32_t SectionInformation, uint32_t SectionInformationLength, uint32_t ReturnLength);
typedef void (*on_NtQuerySection_return_t)(CPUState* cpu, target_ulong pc, uint32_t SectionHandle, uint32_t SectionInformationClass, uint32_t SectionInformation, uint32_t SectionInformationLength, uint32_t ReturnLength);
typedef void (*on_NtQuerySecurityAttributesToken_enter_t)(CPUState* cpu, target_ulong pc, uint32_t TokenHandle, uint32_t Attributes, uint32_t NumberOfAttributes, uint32_t Buffer, uint32_t Length, uint32_t ReturnLength);
typedef void (*on_NtQuerySecurityAttributesToken_return_t)(CPUState* cpu, target_ulong pc, uint32_t TokenHandle, uint32_t Attributes, uint32_t NumberOfAttributes, uint32_t Buffer, uint32_t Length, uint32_t ReturnLength);
typedef void (*on_NtQuerySecurityObject_enter_t)(CPUState* cpu, target_ulong pc, uint32_t Handle, uint32_t SecurityInformation, uint32_t SecurityDescriptor, uint32_t Length, uint32_t LengthNeeded);
typedef void (*on_NtQuerySecurityObject_return_t)(CPUState* cpu, target_ulong pc, uint32_t Handle, uint32_t SecurityInformation, uint32_t SecurityDescriptor, uint32_t Length, uint32_t LengthNeeded);
typedef void (*on_NtQuerySemaphore_enter_t)(CPUState* cpu, target_ulong pc, uint32_t SemaphoreHandle, uint32_t SemaphoreInformationClass, uint32_t SemaphoreInformation, uint32_t SemaphoreInformationLength, uint32_t ReturnLength);
typedef void (*on_NtQuerySemaphore_return_t)(CPUState* cpu, target_ulong pc, uint32_t SemaphoreHandle, uint32_t SemaphoreInformationClass, uint32_t SemaphoreInformation, uint32_t SemaphoreInformationLength, uint32_t ReturnLength);
typedef void (*on_NtQuerySymbolicLinkObject_enter_t)(CPUState* cpu, target_ulong pc, uint32_t LinkHandle, uint32_t LinkTarget, uint32_t ReturnedLength);
typedef void (*on_NtQuerySymbolicLinkObject_return_t)(CPUState* cpu, target_ulong pc, uint32_t LinkHandle, uint32_t LinkTarget, uint32_t ReturnedLength);
typedef void (*on_NtQuerySystemEnvironmentValue_enter_t)(CPUState* cpu, target_ulong pc, uint32_t VariableName, uint32_t VariableValue, uint32_t ValueLength, uint32_t ReturnLength);
typedef void (*on_NtQuerySystemEnvironmentValue_return_t)(CPUState* cpu, target_ulong pc, uint32_t VariableName, uint32_t VariableValue, uint32_t ValueLength, uint32_t ReturnLength);
typedef void (*on_NtQuerySystemEnvironmentValueEx_enter_t)(CPUState* cpu, target_ulong pc, uint32_t VariableName, uint32_t VendorGuid, uint32_t Value, uint32_t ValueLength, uint32_t Attributes);
typedef void (*on_NtQuerySystemEnvironmentValueEx_return_t)(CPUState* cpu, target_ulong pc, uint32_t VariableName, uint32_t VendorGuid, uint32_t Value, uint32_t ValueLength, uint32_t Attributes);
typedef void (*on_NtQuerySystemInformation_enter_t)(CPUState* cpu, target_ulong pc, uint32_t SystemInformationClass, uint32_t SystemInformation, uint32_t SystemInformationLength, uint32_t ReturnLength);
typedef void (*on_NtQuerySystemInformation_return_t)(CPUState* cpu, target_ulong pc, uint32_t SystemInformationClass, uint32_t SystemInformation, uint32_t SystemInformationLength, uint32_t ReturnLength);
typedef void (*on_NtQuerySystemInformationEx_enter_t)(CPUState* cpu, target_ulong pc, uint32_t SystemInformationClass, uint32_t QueryInformation, uint32_t QueryInformationLength, uint32_t SystemInformation, uint32_t SystemInformationLength, uint32_t ReturnLength);
typedef void (*on_NtQuerySystemInformationEx_return_t)(CPUState* cpu, target_ulong pc, uint32_t SystemInformationClass, uint32_t QueryInformation, uint32_t QueryInformationLength, uint32_t SystemInformation, uint32_t SystemInformationLength, uint32_t ReturnLength);
typedef void (*on_NtQuerySystemTime_enter_t)(CPUState* cpu, target_ulong pc, uint32_t SystemTime);
typedef void (*on_NtQuerySystemTime_return_t)(CPUState* cpu, target_ulong pc, uint32_t SystemTime);
typedef void (*on_NtQueryTimer_enter_t)(CPUState* cpu, target_ulong pc, uint32_t TimerHandle, uint32_t TimerInformationClass, uint32_t TimerInformation, uint32_t TimerInformationLength, uint32_t ReturnLength);
typedef void (*on_NtQueryTimer_return_t)(CPUState* cpu, target_ulong pc, uint32_t TimerHandle, uint32_t TimerInformationClass, uint32_t TimerInformation, uint32_t TimerInformationLength, uint32_t ReturnLength);
typedef void (*on_NtQueryTimerResolution_enter_t)(CPUState* cpu, target_ulong pc, uint32_t MaximumTime, uint32_t MinimumTime, uint32_t CurrentTime);
typedef void (*on_NtQueryTimerResolution_return_t)(CPUState* cpu, target_ulong pc, uint32_t MaximumTime, uint32_t MinimumTime, uint32_t CurrentTime);
typedef void (*on_NtQueryValueKey_enter_t)(CPUState* cpu, target_ulong pc, uint32_t KeyHandle, uint32_t ValueName, uint32_t KeyValueInformationClass, uint32_t KeyValueInformation, uint32_t Length, uint32_t ResultLength);
typedef void (*on_NtQueryValueKey_return_t)(CPUState* cpu, target_ulong pc, uint32_t KeyHandle, uint32_t ValueName, uint32_t KeyValueInformationClass, uint32_t KeyValueInformation, uint32_t Length, uint32_t ResultLength);
typedef void (*on_NtQueryVirtualMemory_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ProcessHandle, uint32_t BaseAddress, uint32_t MemoryInformationClass, uint32_t MemoryInformation, uint32_t MemoryInformationLength, uint32_t ReturnLength);
typedef void (*on_NtQueryVirtualMemory_return_t)(CPUState* cpu, target_ulong pc, uint32_t ProcessHandle, uint32_t BaseAddress, uint32_t MemoryInformationClass, uint32_t MemoryInformation, uint32_t MemoryInformationLength, uint32_t ReturnLength);
typedef void (*on_NtQueryVolumeInformationFile_enter_t)(CPUState* cpu, target_ulong pc, uint32_t FileHandle, uint32_t IoStatusBlock, uint32_t FsInformation, uint32_t Length, uint32_t FsInformationClass);
typedef void (*on_NtQueryVolumeInformationFile_return_t)(CPUState* cpu, target_ulong pc, uint32_t FileHandle, uint32_t IoStatusBlock, uint32_t FsInformation, uint32_t Length, uint32_t FsInformationClass);
typedef void (*on_NtQueueApcThread_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ThreadHandle, uint32_t ApcRoutine, uint32_t ApcArgument1, uint32_t ApcArgument2, uint32_t ApcArgument3);
typedef void (*on_NtQueueApcThread_return_t)(CPUState* cpu, target_ulong pc, uint32_t ThreadHandle, uint32_t ApcRoutine, uint32_t ApcArgument1, uint32_t ApcArgument2, uint32_t ApcArgument3);
typedef void (*on_NtQueueApcThreadEx_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ThreadHandle, uint32_t UserApcReserveHandle, uint32_t ApcRoutine, uint32_t ApcArgument1, uint32_t ApcArgument2, uint32_t ApcArgument3);
typedef void (*on_NtQueueApcThreadEx_return_t)(CPUState* cpu, target_ulong pc, uint32_t ThreadHandle, uint32_t UserApcReserveHandle, uint32_t ApcRoutine, uint32_t ApcArgument1, uint32_t ApcArgument2, uint32_t ApcArgument3);
typedef void (*on_NtRaiseException_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ExceptionRecord, uint32_t ContextRecord, uint32_t FirstChance);
typedef void (*on_NtRaiseException_return_t)(CPUState* cpu, target_ulong pc, uint32_t ExceptionRecord, uint32_t ContextRecord, uint32_t FirstChance);
typedef void (*on_NtRaiseHardError_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ErrorStatus, uint32_t NumberOfParameters, uint32_t UnicodeStringParameterMask, uint32_t Parameters, uint32_t ValidResponseOptions, uint32_t Response);
typedef void (*on_NtRaiseHardError_return_t)(CPUState* cpu, target_ulong pc, uint32_t ErrorStatus, uint32_t NumberOfParameters, uint32_t UnicodeStringParameterMask, uint32_t Parameters, uint32_t ValidResponseOptions, uint32_t Response);
typedef void (*on_NtReadFile_enter_t)(CPUState* cpu, target_ulong pc, uint32_t FileHandle, uint32_t Event, uint32_t ApcRoutine, uint32_t ApcContext, uint32_t IoStatusBlock, uint32_t Buffer, uint32_t Length, uint32_t ByteOffset, uint32_t Key);
typedef void (*on_NtReadFile_return_t)(CPUState* cpu, target_ulong pc, uint32_t FileHandle, uint32_t Event, uint32_t ApcRoutine, uint32_t ApcContext, uint32_t IoStatusBlock, uint32_t Buffer, uint32_t Length, uint32_t ByteOffset, uint32_t Key);
typedef void (*on_NtReadFileScatter_enter_t)(CPUState* cpu, target_ulong pc, uint32_t FileHandle, uint32_t Event, uint32_t ApcRoutine, uint32_t ApcContext, uint32_t IoStatusBlock, uint32_t SegmentArray, uint32_t Length, uint32_t ByteOffset, uint32_t Key);
typedef void (*on_NtReadFileScatter_return_t)(CPUState* cpu, target_ulong pc, uint32_t FileHandle, uint32_t Event, uint32_t ApcRoutine, uint32_t ApcContext, uint32_t IoStatusBlock, uint32_t SegmentArray, uint32_t Length, uint32_t ByteOffset, uint32_t Key);
typedef void (*on_NtReadOnlyEnlistment_enter_t)(CPUState* cpu, target_ulong pc, uint32_t EnlistmentHandle, uint32_t TmVirtualClock);
typedef void (*on_NtReadOnlyEnlistment_return_t)(CPUState* cpu, target_ulong pc, uint32_t EnlistmentHandle, uint32_t TmVirtualClock);
typedef void (*on_NtReadRequestData_enter_t)(CPUState* cpu, target_ulong pc, uint32_t PortHandle, uint32_t Message, uint32_t DataEntryIndex, uint32_t Buffer, uint32_t BufferSize, uint32_t NumberOfBytesRead);
typedef void (*on_NtReadRequestData_return_t)(CPUState* cpu, target_ulong pc, uint32_t PortHandle, uint32_t Message, uint32_t DataEntryIndex, uint32_t Buffer, uint32_t BufferSize, uint32_t NumberOfBytesRead);
typedef void (*on_NtReadVirtualMemory_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ProcessHandle, uint32_t BaseAddress, uint32_t Buffer, uint32_t BufferSize, uint32_t NumberOfBytesRead);
typedef void (*on_NtReadVirtualMemory_return_t)(CPUState* cpu, target_ulong pc, uint32_t ProcessHandle, uint32_t BaseAddress, uint32_t Buffer, uint32_t BufferSize, uint32_t NumberOfBytesRead);
typedef void (*on_NtRecoverEnlistment_enter_t)(CPUState* cpu, target_ulong pc, uint32_t EnlistmentHandle, uint32_t EnlistmentKey);
typedef void (*on_NtRecoverEnlistment_return_t)(CPUState* cpu, target_ulong pc, uint32_t EnlistmentHandle, uint32_t EnlistmentKey);
typedef void (*on_NtRecoverResourceManager_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ResourceManagerHandle);
typedef void (*on_NtRecoverResourceManager_return_t)(CPUState* cpu, target_ulong pc, uint32_t ResourceManagerHandle);
typedef void (*on_NtRecoverTransactionManager_enter_t)(CPUState* cpu, target_ulong pc, uint32_t TransactionManagerHandle);
typedef void (*on_NtRecoverTransactionManager_return_t)(CPUState* cpu, target_ulong pc, uint32_t TransactionManagerHandle);
typedef void (*on_NtRegisterProtocolAddressInformation_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ResourceManager, uint32_t ProtocolId, uint32_t ProtocolInformationSize, uint32_t ProtocolInformation, uint32_t CreateOptions);
typedef void (*on_NtRegisterProtocolAddressInformation_return_t)(CPUState* cpu, target_ulong pc, uint32_t ResourceManager, uint32_t ProtocolId, uint32_t ProtocolInformationSize, uint32_t ProtocolInformation, uint32_t CreateOptions);
typedef void (*on_NtRegisterThreadTerminatePort_enter_t)(CPUState* cpu, target_ulong pc, uint32_t PortHandle);
typedef void (*on_NtRegisterThreadTerminatePort_return_t)(CPUState* cpu, target_ulong pc, uint32_t PortHandle);
typedef void (*on_NtReleaseKeyedEvent_enter_t)(CPUState* cpu, target_ulong pc, uint32_t KeyedEventHandle, uint32_t KeyValue, uint32_t Alertable, uint32_t Timeout);
typedef void (*on_NtReleaseKeyedEvent_return_t)(CPUState* cpu, target_ulong pc, uint32_t KeyedEventHandle, uint32_t KeyValue, uint32_t Alertable, uint32_t Timeout);
typedef void (*on_NtReleaseMutant_enter_t)(CPUState* cpu, target_ulong pc, uint32_t MutantHandle, uint32_t PreviousCount);
typedef void (*on_NtReleaseMutant_return_t)(CPUState* cpu, target_ulong pc, uint32_t MutantHandle, uint32_t PreviousCount);
typedef void (*on_NtReleaseSemaphore_enter_t)(CPUState* cpu, target_ulong pc, uint32_t SemaphoreHandle, int32_t ReleaseCount, uint32_t PreviousCount);
typedef void (*on_NtReleaseSemaphore_return_t)(CPUState* cpu, target_ulong pc, uint32_t SemaphoreHandle, int32_t ReleaseCount, uint32_t PreviousCount);
typedef void (*on_NtReleaseWorkerFactoryWorker_enter_t)(CPUState* cpu, target_ulong pc, uint32_t WorkerFactoryHandle);
typedef void (*on_NtReleaseWorkerFactoryWorker_return_t)(CPUState* cpu, target_ulong pc, uint32_t WorkerFactoryHandle);
typedef void (*on_NtRemoveIoCompletion_enter_t)(CPUState* cpu, target_ulong pc, uint32_t IoCompletionHandle, uint32_t KeyContext, uint32_t ApcContext, uint32_t IoStatusBlock, uint32_t Timeout);
typedef void (*on_NtRemoveIoCompletion_return_t)(CPUState* cpu, target_ulong pc, uint32_t IoCompletionHandle, uint32_t KeyContext, uint32_t ApcContext, uint32_t IoStatusBlock, uint32_t Timeout);
typedef void (*on_NtRemoveIoCompletionEx_enter_t)(CPUState* cpu, target_ulong pc, uint32_t IoCompletionHandle, uint32_t IoCompletionInformation, uint32_t Count, uint32_t NumEntriesRemoved, uint32_t Timeout, uint32_t Alertable);
typedef void (*on_NtRemoveIoCompletionEx_return_t)(CPUState* cpu, target_ulong pc, uint32_t IoCompletionHandle, uint32_t IoCompletionInformation, uint32_t Count, uint32_t NumEntriesRemoved, uint32_t Timeout, uint32_t Alertable);
typedef void (*on_NtRemoveProcessDebug_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ProcessHandle, uint32_t DebugObjectHandle);
typedef void (*on_NtRemoveProcessDebug_return_t)(CPUState* cpu, target_ulong pc, uint32_t ProcessHandle, uint32_t DebugObjectHandle);
typedef void (*on_NtRenameKey_enter_t)(CPUState* cpu, target_ulong pc, uint32_t KeyHandle, uint32_t NewName);
typedef void (*on_NtRenameKey_return_t)(CPUState* cpu, target_ulong pc, uint32_t KeyHandle, uint32_t NewName);
typedef void (*on_NtRenameTransactionManager_enter_t)(CPUState* cpu, target_ulong pc, uint32_t LogFileName, uint32_t ExistingTransactionManagerGuid);
typedef void (*on_NtRenameTransactionManager_return_t)(CPUState* cpu, target_ulong pc, uint32_t LogFileName, uint32_t ExistingTransactionManagerGuid);
typedef void (*on_NtReplaceKey_enter_t)(CPUState* cpu, target_ulong pc, uint32_t NewFile, uint32_t TargetHandle, uint32_t OldFile);
typedef void (*on_NtReplaceKey_return_t)(CPUState* cpu, target_ulong pc, uint32_t NewFile, uint32_t TargetHandle, uint32_t OldFile);
typedef void (*on_NtReplacePartitionUnit_enter_t)(CPUState* cpu, target_ulong pc, uint32_t TargetInstancePath, uint32_t SpareInstancePath, uint32_t Flags);
typedef void (*on_NtReplacePartitionUnit_return_t)(CPUState* cpu, target_ulong pc, uint32_t TargetInstancePath, uint32_t SpareInstancePath, uint32_t Flags);
typedef void (*on_NtReplyPort_enter_t)(CPUState* cpu, target_ulong pc, uint32_t PortHandle, uint32_t ReplyMessage);
typedef void (*on_NtReplyPort_return_t)(CPUState* cpu, target_ulong pc, uint32_t PortHandle, uint32_t ReplyMessage);
typedef void (*on_NtReplyWaitReceivePort_enter_t)(CPUState* cpu, target_ulong pc, uint32_t PortHandle, uint32_t PortContext, uint32_t ReplyMessage, uint32_t ReceiveMessage);
typedef void (*on_NtReplyWaitReceivePort_return_t)(CPUState* cpu, target_ulong pc, uint32_t PortHandle, uint32_t PortContext, uint32_t ReplyMessage, uint32_t ReceiveMessage);
typedef void (*on_NtReplyWaitReceivePortEx_enter_t)(CPUState* cpu, target_ulong pc, uint32_t PortHandle, uint32_t PortContext, uint32_t ReplyMessage, uint32_t ReceiveMessage, uint32_t Timeout);
typedef void (*on_NtReplyWaitReceivePortEx_return_t)(CPUState* cpu, target_ulong pc, uint32_t PortHandle, uint32_t PortContext, uint32_t ReplyMessage, uint32_t ReceiveMessage, uint32_t Timeout);
typedef void (*on_NtReplyWaitReplyPort_enter_t)(CPUState* cpu, target_ulong pc, uint32_t PortHandle, uint32_t ReplyMessage);
typedef void (*on_NtReplyWaitReplyPort_return_t)(CPUState* cpu, target_ulong pc, uint32_t PortHandle, uint32_t ReplyMessage);
typedef void (*on_NtRequestPort_enter_t)(CPUState* cpu, target_ulong pc, uint32_t PortHandle, uint32_t RequestMessage);
typedef void (*on_NtRequestPort_return_t)(CPUState* cpu, target_ulong pc, uint32_t PortHandle, uint32_t RequestMessage);
typedef void (*on_NtRequestWaitReplyPort_enter_t)(CPUState* cpu, target_ulong pc, uint32_t PortHandle, uint32_t RequestMessage, uint32_t ReplyMessage);
typedef void (*on_NtRequestWaitReplyPort_return_t)(CPUState* cpu, target_ulong pc, uint32_t PortHandle, uint32_t RequestMessage, uint32_t ReplyMessage);
typedef void (*on_NtResetEvent_enter_t)(CPUState* cpu, target_ulong pc, uint32_t EventHandle, uint32_t PreviousState);
typedef void (*on_NtResetEvent_return_t)(CPUState* cpu, target_ulong pc, uint32_t EventHandle, uint32_t PreviousState);
typedef void (*on_NtResetWriteWatch_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ProcessHandle, uint32_t BaseAddress, uint32_t RegionSize);
typedef void (*on_NtResetWriteWatch_return_t)(CPUState* cpu, target_ulong pc, uint32_t ProcessHandle, uint32_t BaseAddress, uint32_t RegionSize);
typedef void (*on_NtRestoreKey_enter_t)(CPUState* cpu, target_ulong pc, uint32_t KeyHandle, uint32_t FileHandle, uint32_t Flags);
typedef void (*on_NtRestoreKey_return_t)(CPUState* cpu, target_ulong pc, uint32_t KeyHandle, uint32_t FileHandle, uint32_t Flags);
typedef void (*on_NtResumeProcess_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ProcessHandle);
typedef void (*on_NtResumeProcess_return_t)(CPUState* cpu, target_ulong pc, uint32_t ProcessHandle);
typedef void (*on_NtResumeThread_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ThreadHandle, uint32_t PreviousSuspendCount);
typedef void (*on_NtResumeThread_return_t)(CPUState* cpu, target_ulong pc, uint32_t ThreadHandle, uint32_t PreviousSuspendCount);
typedef void (*on_NtRollbackComplete_enter_t)(CPUState* cpu, target_ulong pc, uint32_t EnlistmentHandle, uint32_t TmVirtualClock);
typedef void (*on_NtRollbackComplete_return_t)(CPUState* cpu, target_ulong pc, uint32_t EnlistmentHandle, uint32_t TmVirtualClock);
typedef void (*on_NtRollbackEnlistment_enter_t)(CPUState* cpu, target_ulong pc, uint32_t EnlistmentHandle, uint32_t TmVirtualClock);
typedef void (*on_NtRollbackEnlistment_return_t)(CPUState* cpu, target_ulong pc, uint32_t EnlistmentHandle, uint32_t TmVirtualClock);
typedef void (*on_NtRollbackTransaction_enter_t)(CPUState* cpu, target_ulong pc, uint32_t TransactionHandle, uint32_t Wait);
typedef void (*on_NtRollbackTransaction_return_t)(CPUState* cpu, target_ulong pc, uint32_t TransactionHandle, uint32_t Wait);
typedef void (*on_NtRollforwardTransactionManager_enter_t)(CPUState* cpu, target_ulong pc, uint32_t TransactionManagerHandle, uint32_t TmVirtualClock);
typedef void (*on_NtRollforwardTransactionManager_return_t)(CPUState* cpu, target_ulong pc, uint32_t TransactionManagerHandle, uint32_t TmVirtualClock);
typedef void (*on_NtSaveKey_enter_t)(CPUState* cpu, target_ulong pc, uint32_t KeyHandle, uint32_t FileHandle);
typedef void (*on_NtSaveKey_return_t)(CPUState* cpu, target_ulong pc, uint32_t KeyHandle, uint32_t FileHandle);
typedef void (*on_NtSaveKeyEx_enter_t)(CPUState* cpu, target_ulong pc, uint32_t KeyHandle, uint32_t FileHandle, uint32_t Format);
typedef void (*on_NtSaveKeyEx_return_t)(CPUState* cpu, target_ulong pc, uint32_t KeyHandle, uint32_t FileHandle, uint32_t Format);
typedef void (*on_NtSaveMergedKeys_enter_t)(CPUState* cpu, target_ulong pc, uint32_t HighPrecedenceKeyHandle, uint32_t LowPrecedenceKeyHandle, uint32_t FileHandle);
typedef void (*on_NtSaveMergedKeys_return_t)(CPUState* cpu, target_ulong pc, uint32_t HighPrecedenceKeyHandle, uint32_t LowPrecedenceKeyHandle, uint32_t FileHandle);
typedef void (*on_NtSecureConnectPort_enter_t)(CPUState* cpu, target_ulong pc, uint32_t PortHandle, uint32_t PortName, uint32_t SecurityQos, uint32_t ClientView, uint32_t RequiredServerSid, uint32_t ServerView, uint32_t MaxMessageLength, uint32_t ConnectionInformation, uint32_t ConnectionInformationLength);
typedef void (*on_NtSecureConnectPort_return_t)(CPUState* cpu, target_ulong pc, uint32_t PortHandle, uint32_t PortName, uint32_t SecurityQos, uint32_t ClientView, uint32_t RequiredServerSid, uint32_t ServerView, uint32_t MaxMessageLength, uint32_t ConnectionInformation, uint32_t ConnectionInformationLength);
typedef void (*on_NtSerializeBoot_enter_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_NtSerializeBoot_return_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_NtSetBootEntryOrder_enter_t)(CPUState* cpu, target_ulong pc, uint32_t Ids, uint32_t Count);
typedef void (*on_NtSetBootEntryOrder_return_t)(CPUState* cpu, target_ulong pc, uint32_t Ids, uint32_t Count);
typedef void (*on_NtSetBootOptions_enter_t)(CPUState* cpu, target_ulong pc, uint32_t BootOptions, uint32_t FieldsToChange);
typedef void (*on_NtSetBootOptions_return_t)(CPUState* cpu, target_ulong pc, uint32_t BootOptions, uint32_t FieldsToChange);
typedef void (*on_NtSetContextThread_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ThreadHandle, uint32_t ThreadContext);
typedef void (*on_NtSetContextThread_return_t)(CPUState* cpu, target_ulong pc, uint32_t ThreadHandle, uint32_t ThreadContext);
typedef void (*on_NtSetDebugFilterState_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ComponentId, uint32_t Level, uint32_t State);
typedef void (*on_NtSetDebugFilterState_return_t)(CPUState* cpu, target_ulong pc, uint32_t ComponentId, uint32_t Level, uint32_t State);
typedef void (*on_NtSetDefaultHardErrorPort_enter_t)(CPUState* cpu, target_ulong pc, uint32_t DefaultHardErrorPort);
typedef void (*on_NtSetDefaultHardErrorPort_return_t)(CPUState* cpu, target_ulong pc, uint32_t DefaultHardErrorPort);
typedef void (*on_NtSetDefaultLocale_enter_t)(CPUState* cpu, target_ulong pc, uint32_t UserProfile, uint32_t DefaultLocaleId);
typedef void (*on_NtSetDefaultLocale_return_t)(CPUState* cpu, target_ulong pc, uint32_t UserProfile, uint32_t DefaultLocaleId);
typedef void (*on_NtSetDefaultUILanguage_enter_t)(CPUState* cpu, target_ulong pc, uint32_t DefaultUILanguageId);
typedef void (*on_NtSetDefaultUILanguage_return_t)(CPUState* cpu, target_ulong pc, uint32_t DefaultUILanguageId);
typedef void (*on_NtSetDriverEntryOrder_enter_t)(CPUState* cpu, target_ulong pc, uint32_t Ids, uint32_t Count);
typedef void (*on_NtSetDriverEntryOrder_return_t)(CPUState* cpu, target_ulong pc, uint32_t Ids, uint32_t Count);
typedef void (*on_NtSetEaFile_enter_t)(CPUState* cpu, target_ulong pc, uint32_t FileHandle, uint32_t IoStatusBlock, uint32_t Buffer, uint32_t Length);
typedef void (*on_NtSetEaFile_return_t)(CPUState* cpu, target_ulong pc, uint32_t FileHandle, uint32_t IoStatusBlock, uint32_t Buffer, uint32_t Length);
typedef void (*on_NtSetEvent_enter_t)(CPUState* cpu, target_ulong pc, uint32_t EventHandle, uint32_t PreviousState);
typedef void (*on_NtSetEvent_return_t)(CPUState* cpu, target_ulong pc, uint32_t EventHandle, uint32_t PreviousState);
typedef void (*on_NtSetEventBoostPriority_enter_t)(CPUState* cpu, target_ulong pc, uint32_t EventHandle);
typedef void (*on_NtSetEventBoostPriority_return_t)(CPUState* cpu, target_ulong pc, uint32_t EventHandle);
typedef void (*on_NtSetHighEventPair_enter_t)(CPUState* cpu, target_ulong pc, uint32_t EventPairHandle);
typedef void (*on_NtSetHighEventPair_return_t)(CPUState* cpu, target_ulong pc, uint32_t EventPairHandle);
typedef void (*on_NtSetHighWaitLowEventPair_enter_t)(CPUState* cpu, target_ulong pc, uint32_t EventPairHandle);
typedef void (*on_NtSetHighWaitLowEventPair_return_t)(CPUState* cpu, target_ulong pc, uint32_t EventPairHandle);
typedef void (*on_NtSetInformationDebugObject_enter_t)(CPUState* cpu, target_ulong pc, uint32_t DebugObjectHandle, uint32_t DebugObjectInformationClass, uint32_t DebugInformation, uint32_t DebugInformationLength, uint32_t ReturnLength);
typedef void (*on_NtSetInformationDebugObject_return_t)(CPUState* cpu, target_ulong pc, uint32_t DebugObjectHandle, uint32_t DebugObjectInformationClass, uint32_t DebugInformation, uint32_t DebugInformationLength, uint32_t ReturnLength);
typedef void (*on_NtSetInformationEnlistment_enter_t)(CPUState* cpu, target_ulong pc, uint32_t EnlistmentHandle, uint32_t EnlistmentInformationClass, uint32_t EnlistmentInformation, uint32_t EnlistmentInformationLength);
typedef void (*on_NtSetInformationEnlistment_return_t)(CPUState* cpu, target_ulong pc, uint32_t EnlistmentHandle, uint32_t EnlistmentInformationClass, uint32_t EnlistmentInformation, uint32_t EnlistmentInformationLength);
typedef void (*on_NtSetInformationFile_enter_t)(CPUState* cpu, target_ulong pc, uint32_t FileHandle, uint32_t IoStatusBlock, uint32_t FileInformation, uint32_t Length, uint32_t FileInformationClass);
typedef void (*on_NtSetInformationFile_return_t)(CPUState* cpu, target_ulong pc, uint32_t FileHandle, uint32_t IoStatusBlock, uint32_t FileInformation, uint32_t Length, uint32_t FileInformationClass);
typedef void (*on_NtSetInformationJobObject_enter_t)(CPUState* cpu, target_ulong pc, uint32_t JobHandle, uint32_t JobObjectInformationClass, uint32_t JobObjectInformation, uint32_t JobObjectInformationLength);
typedef void (*on_NtSetInformationJobObject_return_t)(CPUState* cpu, target_ulong pc, uint32_t JobHandle, uint32_t JobObjectInformationClass, uint32_t JobObjectInformation, uint32_t JobObjectInformationLength);
typedef void (*on_NtSetInformationKey_enter_t)(CPUState* cpu, target_ulong pc, uint32_t KeyHandle, uint32_t KeySetInformationClass, uint32_t KeySetInformation, uint32_t KeySetInformationLength);
typedef void (*on_NtSetInformationKey_return_t)(CPUState* cpu, target_ulong pc, uint32_t KeyHandle, uint32_t KeySetInformationClass, uint32_t KeySetInformation, uint32_t KeySetInformationLength);
typedef void (*on_NtSetInformationObject_enter_t)(CPUState* cpu, target_ulong pc, uint32_t Handle, uint32_t ObjectInformationClass, uint32_t ObjectInformation, uint32_t ObjectInformationLength);
typedef void (*on_NtSetInformationObject_return_t)(CPUState* cpu, target_ulong pc, uint32_t Handle, uint32_t ObjectInformationClass, uint32_t ObjectInformation, uint32_t ObjectInformationLength);
typedef void (*on_NtSetInformationProcess_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ProcessHandle, uint32_t ProcessInformationClass, uint32_t ProcessInformation, uint32_t ProcessInformationLength);
typedef void (*on_NtSetInformationProcess_return_t)(CPUState* cpu, target_ulong pc, uint32_t ProcessHandle, uint32_t ProcessInformationClass, uint32_t ProcessInformation, uint32_t ProcessInformationLength);
typedef void (*on_NtSetInformationResourceManager_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ResourceManagerHandle, uint32_t ResourceManagerInformationClass, uint32_t ResourceManagerInformation, uint32_t ResourceManagerInformationLength);
typedef void (*on_NtSetInformationResourceManager_return_t)(CPUState* cpu, target_ulong pc, uint32_t ResourceManagerHandle, uint32_t ResourceManagerInformationClass, uint32_t ResourceManagerInformation, uint32_t ResourceManagerInformationLength);
typedef void (*on_NtSetInformationThread_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ThreadHandle, uint32_t ThreadInformationClass, uint32_t ThreadInformation, uint32_t ThreadInformationLength);
typedef void (*on_NtSetInformationThread_return_t)(CPUState* cpu, target_ulong pc, uint32_t ThreadHandle, uint32_t ThreadInformationClass, uint32_t ThreadInformation, uint32_t ThreadInformationLength);
typedef void (*on_NtSetInformationToken_enter_t)(CPUState* cpu, target_ulong pc, uint32_t TokenHandle, uint32_t TokenInformationClass, uint32_t TokenInformation, uint32_t TokenInformationLength);
typedef void (*on_NtSetInformationToken_return_t)(CPUState* cpu, target_ulong pc, uint32_t TokenHandle, uint32_t TokenInformationClass, uint32_t TokenInformation, uint32_t TokenInformationLength);
typedef void (*on_NtSetInformationTransaction_enter_t)(CPUState* cpu, target_ulong pc, uint32_t TransactionHandle, uint32_t TransactionInformationClass, uint32_t TransactionInformation, uint32_t TransactionInformationLength);
typedef void (*on_NtSetInformationTransaction_return_t)(CPUState* cpu, target_ulong pc, uint32_t TransactionHandle, uint32_t TransactionInformationClass, uint32_t TransactionInformation, uint32_t TransactionInformationLength);
typedef void (*on_NtSetInformationTransactionManager_enter_t)(CPUState* cpu, target_ulong pc, uint32_t TmHandle, uint32_t TransactionManagerInformationClass, uint32_t TransactionManagerInformation, uint32_t TransactionManagerInformationLength);
typedef void (*on_NtSetInformationTransactionManager_return_t)(CPUState* cpu, target_ulong pc, uint32_t TmHandle, uint32_t TransactionManagerInformationClass, uint32_t TransactionManagerInformation, uint32_t TransactionManagerInformationLength);
typedef void (*on_NtSetInformationWorkerFactory_enter_t)(CPUState* cpu, target_ulong pc, uint32_t WorkerFactoryHandle, uint32_t WorkerFactoryInformationClass, uint32_t WorkerFactoryInformation, uint32_t WorkerFactoryInformationLength);
typedef void (*on_NtSetInformationWorkerFactory_return_t)(CPUState* cpu, target_ulong pc, uint32_t WorkerFactoryHandle, uint32_t WorkerFactoryInformationClass, uint32_t WorkerFactoryInformation, uint32_t WorkerFactoryInformationLength);
typedef void (*on_NtSetIntervalProfile_enter_t)(CPUState* cpu, target_ulong pc, uint32_t Interval, uint32_t Source);
typedef void (*on_NtSetIntervalProfile_return_t)(CPUState* cpu, target_ulong pc, uint32_t Interval, uint32_t Source);
typedef void (*on_NtSetIoCompletion_enter_t)(CPUState* cpu, target_ulong pc, uint32_t IoCompletionHandle, uint32_t KeyContext, uint32_t ApcContext, uint32_t IoStatus, uint32_t IoStatusInformation);
typedef void (*on_NtSetIoCompletion_return_t)(CPUState* cpu, target_ulong pc, uint32_t IoCompletionHandle, uint32_t KeyContext, uint32_t ApcContext, uint32_t IoStatus, uint32_t IoStatusInformation);
typedef void (*on_NtSetIoCompletionEx_enter_t)(CPUState* cpu, target_ulong pc, uint32_t IoCompletionHandle, uint32_t IoCompletionReserveHandle, uint32_t KeyContext, uint32_t ApcContext, uint32_t IoStatus, uint32_t IoStatusInformation);
typedef void (*on_NtSetIoCompletionEx_return_t)(CPUState* cpu, target_ulong pc, uint32_t IoCompletionHandle, uint32_t IoCompletionReserveHandle, uint32_t KeyContext, uint32_t ApcContext, uint32_t IoStatus, uint32_t IoStatusInformation);
typedef void (*on_NtSetLdtEntries_enter_t)(CPUState* cpu, target_ulong pc, uint32_t Selector0, uint32_t Entry0Low, uint32_t Entry0Hi, uint32_t Selector1, uint32_t Entry1Low, uint32_t Entry1Hi);
typedef void (*on_NtSetLdtEntries_return_t)(CPUState* cpu, target_ulong pc, uint32_t Selector0, uint32_t Entry0Low, uint32_t Entry0Hi, uint32_t Selector1, uint32_t Entry1Low, uint32_t Entry1Hi);
typedef void (*on_NtSetLowEventPair_enter_t)(CPUState* cpu, target_ulong pc, uint32_t EventPairHandle);
typedef void (*on_NtSetLowEventPair_return_t)(CPUState* cpu, target_ulong pc, uint32_t EventPairHandle);
typedef void (*on_NtSetLowWaitHighEventPair_enter_t)(CPUState* cpu, target_ulong pc, uint32_t EventPairHandle);
typedef void (*on_NtSetLowWaitHighEventPair_return_t)(CPUState* cpu, target_ulong pc, uint32_t EventPairHandle);
typedef void (*on_NtSetQuotaInformationFile_enter_t)(CPUState* cpu, target_ulong pc, uint32_t FileHandle, uint32_t IoStatusBlock, uint32_t Buffer, uint32_t Length);
typedef void (*on_NtSetQuotaInformationFile_return_t)(CPUState* cpu, target_ulong pc, uint32_t FileHandle, uint32_t IoStatusBlock, uint32_t Buffer, uint32_t Length);
typedef void (*on_NtSetSecurityObject_enter_t)(CPUState* cpu, target_ulong pc, uint32_t Handle, uint32_t SecurityInformation, uint32_t SecurityDescriptor);
typedef void (*on_NtSetSecurityObject_return_t)(CPUState* cpu, target_ulong pc, uint32_t Handle, uint32_t SecurityInformation, uint32_t SecurityDescriptor);
typedef void (*on_NtSetSystemEnvironmentValue_enter_t)(CPUState* cpu, target_ulong pc, uint32_t VariableName, uint32_t VariableValue);
typedef void (*on_NtSetSystemEnvironmentValue_return_t)(CPUState* cpu, target_ulong pc, uint32_t VariableName, uint32_t VariableValue);
typedef void (*on_NtSetSystemEnvironmentValueEx_enter_t)(CPUState* cpu, target_ulong pc, uint32_t VariableName, uint32_t VendorGuid, uint32_t Value, uint32_t ValueLength, uint32_t Attributes);
typedef void (*on_NtSetSystemEnvironmentValueEx_return_t)(CPUState* cpu, target_ulong pc, uint32_t VariableName, uint32_t VendorGuid, uint32_t Value, uint32_t ValueLength, uint32_t Attributes);
typedef void (*on_NtSetSystemInformation_enter_t)(CPUState* cpu, target_ulong pc, uint32_t SystemInformationClass, uint32_t SystemInformation, uint32_t SystemInformationLength);
typedef void (*on_NtSetSystemInformation_return_t)(CPUState* cpu, target_ulong pc, uint32_t SystemInformationClass, uint32_t SystemInformation, uint32_t SystemInformationLength);
typedef void (*on_NtSetSystemPowerState_enter_t)(CPUState* cpu, target_ulong pc, uint32_t SystemAction, uint32_t MinSystemState, uint32_t Flags);
typedef void (*on_NtSetSystemPowerState_return_t)(CPUState* cpu, target_ulong pc, uint32_t SystemAction, uint32_t MinSystemState, uint32_t Flags);
typedef void (*on_NtSetSystemTime_enter_t)(CPUState* cpu, target_ulong pc, uint32_t SystemTime, uint32_t PreviousTime);
typedef void (*on_NtSetSystemTime_return_t)(CPUState* cpu, target_ulong pc, uint32_t SystemTime, uint32_t PreviousTime);
typedef void (*on_NtSetThreadExecutionState_enter_t)(CPUState* cpu, target_ulong pc, uint32_t esFlags, uint32_t PreviousFlags);
typedef void (*on_NtSetThreadExecutionState_return_t)(CPUState* cpu, target_ulong pc, uint32_t esFlags, uint32_t PreviousFlags);
typedef void (*on_NtSetTimer_enter_t)(CPUState* cpu, target_ulong pc, uint32_t TimerHandle, uint32_t DueTime, uint32_t TimerApcRoutine, uint32_t TimerContext, uint32_t WakeTimer, int32_t Period, uint32_t PreviousState);
typedef void (*on_NtSetTimer_return_t)(CPUState* cpu, target_ulong pc, uint32_t TimerHandle, uint32_t DueTime, uint32_t TimerApcRoutine, uint32_t TimerContext, uint32_t WakeTimer, int32_t Period, uint32_t PreviousState);
typedef void (*on_NtSetTimerEx_enter_t)(CPUState* cpu, target_ulong pc, uint32_t TimerHandle, uint32_t TimerSetInformationClass, uint32_t TimerSetInformation, uint32_t TimerSetInformationLength);
typedef void (*on_NtSetTimerEx_return_t)(CPUState* cpu, target_ulong pc, uint32_t TimerHandle, uint32_t TimerSetInformationClass, uint32_t TimerSetInformation, uint32_t TimerSetInformationLength);
typedef void (*on_NtSetTimerResolution_enter_t)(CPUState* cpu, target_ulong pc, uint32_t DesiredTime, uint32_t SetResolution, uint32_t ActualTime);
typedef void (*on_NtSetTimerResolution_return_t)(CPUState* cpu, target_ulong pc, uint32_t DesiredTime, uint32_t SetResolution, uint32_t ActualTime);
typedef void (*on_NtSetUuidSeed_enter_t)(CPUState* cpu, target_ulong pc, uint32_t Seed);
typedef void (*on_NtSetUuidSeed_return_t)(CPUState* cpu, target_ulong pc, uint32_t Seed);
typedef void (*on_NtSetValueKey_enter_t)(CPUState* cpu, target_ulong pc, uint32_t KeyHandle, uint32_t ValueName, uint32_t TitleIndex, uint32_t Type, uint32_t Data, uint32_t DataSize);
typedef void (*on_NtSetValueKey_return_t)(CPUState* cpu, target_ulong pc, uint32_t KeyHandle, uint32_t ValueName, uint32_t TitleIndex, uint32_t Type, uint32_t Data, uint32_t DataSize);
typedef void (*on_NtSetVolumeInformationFile_enter_t)(CPUState* cpu, target_ulong pc, uint32_t FileHandle, uint32_t IoStatusBlock, uint32_t FsInformation, uint32_t Length, uint32_t FsInformationClass);
typedef void (*on_NtSetVolumeInformationFile_return_t)(CPUState* cpu, target_ulong pc, uint32_t FileHandle, uint32_t IoStatusBlock, uint32_t FsInformation, uint32_t Length, uint32_t FsInformationClass);
typedef void (*on_NtShutdownSystem_enter_t)(CPUState* cpu, target_ulong pc, uint32_t Action);
typedef void (*on_NtShutdownSystem_return_t)(CPUState* cpu, target_ulong pc, uint32_t Action);
typedef void (*on_NtShutdownWorkerFactory_enter_t)(CPUState* cpu, target_ulong pc, uint32_t WorkerFactoryHandle, uint32_t PendingWorkerCount);
typedef void (*on_NtShutdownWorkerFactory_return_t)(CPUState* cpu, target_ulong pc, uint32_t WorkerFactoryHandle, uint32_t PendingWorkerCount);
typedef void (*on_NtSignalAndWaitForSingleObject_enter_t)(CPUState* cpu, target_ulong pc, uint32_t SignalHandle, uint32_t WaitHandle, uint32_t Alertable, uint32_t Timeout);
typedef void (*on_NtSignalAndWaitForSingleObject_return_t)(CPUState* cpu, target_ulong pc, uint32_t SignalHandle, uint32_t WaitHandle, uint32_t Alertable, uint32_t Timeout);
typedef void (*on_NtSinglePhaseReject_enter_t)(CPUState* cpu, target_ulong pc, uint32_t EnlistmentHandle, uint32_t TmVirtualClock);
typedef void (*on_NtSinglePhaseReject_return_t)(CPUState* cpu, target_ulong pc, uint32_t EnlistmentHandle, uint32_t TmVirtualClock);
typedef void (*on_NtStartProfile_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ProfileHandle);
typedef void (*on_NtStartProfile_return_t)(CPUState* cpu, target_ulong pc, uint32_t ProfileHandle);
typedef void (*on_NtStopProfile_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ProfileHandle);
typedef void (*on_NtStopProfile_return_t)(CPUState* cpu, target_ulong pc, uint32_t ProfileHandle);
typedef void (*on_NtSuspendProcess_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ProcessHandle);
typedef void (*on_NtSuspendProcess_return_t)(CPUState* cpu, target_ulong pc, uint32_t ProcessHandle);
typedef void (*on_NtSuspendThread_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ThreadHandle, uint32_t PreviousSuspendCount);
typedef void (*on_NtSuspendThread_return_t)(CPUState* cpu, target_ulong pc, uint32_t ThreadHandle, uint32_t PreviousSuspendCount);
typedef void (*on_NtSystemDebugControl_enter_t)(CPUState* cpu, target_ulong pc, uint32_t Command, uint32_t InputBuffer, uint32_t InputBufferLength, uint32_t OutputBuffer, uint32_t OutputBufferLength, uint32_t ReturnLength);
typedef void (*on_NtSystemDebugControl_return_t)(CPUState* cpu, target_ulong pc, uint32_t Command, uint32_t InputBuffer, uint32_t InputBufferLength, uint32_t OutputBuffer, uint32_t OutputBufferLength, uint32_t ReturnLength);
typedef void (*on_NtTerminateJobObject_enter_t)(CPUState* cpu, target_ulong pc, uint32_t JobHandle, uint32_t ExitStatus);
typedef void (*on_NtTerminateJobObject_return_t)(CPUState* cpu, target_ulong pc, uint32_t JobHandle, uint32_t ExitStatus);
typedef void (*on_NtTerminateProcess_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ProcessHandle, uint32_t ExitStatus);
typedef void (*on_NtTerminateProcess_return_t)(CPUState* cpu, target_ulong pc, uint32_t ProcessHandle, uint32_t ExitStatus);
typedef void (*on_NtTerminateThread_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ThreadHandle, uint32_t ExitStatus);
typedef void (*on_NtTerminateThread_return_t)(CPUState* cpu, target_ulong pc, uint32_t ThreadHandle, uint32_t ExitStatus);
typedef void (*on_NtTestAlert_enter_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_NtTestAlert_return_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_NtThawRegistry_enter_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_NtThawRegistry_return_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_NtThawTransactions_enter_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_NtThawTransactions_return_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_NtTraceControl_enter_t)(CPUState* cpu, target_ulong pc, uint32_t FunctionCode, uint32_t InBuffer, uint32_t InBufferLen, uint32_t OutBuffer, uint32_t OutBufferLen, uint32_t ReturnLength);
typedef void (*on_NtTraceControl_return_t)(CPUState* cpu, target_ulong pc, uint32_t FunctionCode, uint32_t InBuffer, uint32_t InBufferLen, uint32_t OutBuffer, uint32_t OutBufferLen, uint32_t ReturnLength);
typedef void (*on_NtTraceEvent_enter_t)(CPUState* cpu, target_ulong pc, uint32_t TraceHandle, uint32_t Flags, uint32_t FieldSize, uint32_t Fields);
typedef void (*on_NtTraceEvent_return_t)(CPUState* cpu, target_ulong pc, uint32_t TraceHandle, uint32_t Flags, uint32_t FieldSize, uint32_t Fields);
typedef void (*on_NtTranslateFilePath_enter_t)(CPUState* cpu, target_ulong pc, uint32_t InputFilePath, uint32_t OutputType, uint32_t OutputFilePath, uint32_t OutputFilePathLength);
typedef void (*on_NtTranslateFilePath_return_t)(CPUState* cpu, target_ulong pc, uint32_t InputFilePath, uint32_t OutputType, uint32_t OutputFilePath, uint32_t OutputFilePathLength);
typedef void (*on_NtUmsThreadYield_enter_t)(CPUState* cpu, target_ulong pc, uint32_t SchedulerParam);
typedef void (*on_NtUmsThreadYield_return_t)(CPUState* cpu, target_ulong pc, uint32_t SchedulerParam);
typedef void (*on_NtUnloadDriver_enter_t)(CPUState* cpu, target_ulong pc, uint32_t DriverServiceName);
typedef void (*on_NtUnloadDriver_return_t)(CPUState* cpu, target_ulong pc, uint32_t DriverServiceName);
typedef void (*on_NtUnloadKey_enter_t)(CPUState* cpu, target_ulong pc, uint32_t TargetKey);
typedef void (*on_NtUnloadKey_return_t)(CPUState* cpu, target_ulong pc, uint32_t TargetKey);
typedef void (*on_NtUnloadKey2_enter_t)(CPUState* cpu, target_ulong pc, uint32_t TargetKey, uint32_t Flags);
typedef void (*on_NtUnloadKey2_return_t)(CPUState* cpu, target_ulong pc, uint32_t TargetKey, uint32_t Flags);
typedef void (*on_NtUnloadKeyEx_enter_t)(CPUState* cpu, target_ulong pc, uint32_t TargetKey, uint32_t Event);
typedef void (*on_NtUnloadKeyEx_return_t)(CPUState* cpu, target_ulong pc, uint32_t TargetKey, uint32_t Event);
typedef void (*on_NtUnlockFile_enter_t)(CPUState* cpu, target_ulong pc, uint32_t FileHandle, uint32_t IoStatusBlock, uint32_t ByteOffset, uint32_t Length, uint32_t Key);
typedef void (*on_NtUnlockFile_return_t)(CPUState* cpu, target_ulong pc, uint32_t FileHandle, uint32_t IoStatusBlock, uint32_t ByteOffset, uint32_t Length, uint32_t Key);
typedef void (*on_NtUnlockVirtualMemory_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ProcessHandle, uint32_t BaseAddress, uint32_t RegionSize, uint32_t MapType);
typedef void (*on_NtUnlockVirtualMemory_return_t)(CPUState* cpu, target_ulong pc, uint32_t ProcessHandle, uint32_t BaseAddress, uint32_t RegionSize, uint32_t MapType);
typedef void (*on_NtUnmapViewOfSection_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ProcessHandle, uint32_t BaseAddress);
typedef void (*on_NtUnmapViewOfSection_return_t)(CPUState* cpu, target_ulong pc, uint32_t ProcessHandle, uint32_t BaseAddress);
typedef void (*on_NtVdmControl_enter_t)(CPUState* cpu, target_ulong pc, uint32_t Service, uint32_t ServiceData);
typedef void (*on_NtVdmControl_return_t)(CPUState* cpu, target_ulong pc, uint32_t Service, uint32_t ServiceData);
typedef void (*on_NtWaitForDebugEvent_enter_t)(CPUState* cpu, target_ulong pc, uint32_t DebugObjectHandle, uint32_t Alertable, uint32_t Timeout, uint32_t WaitStateChange);
typedef void (*on_NtWaitForDebugEvent_return_t)(CPUState* cpu, target_ulong pc, uint32_t DebugObjectHandle, uint32_t Alertable, uint32_t Timeout, uint32_t WaitStateChange);
typedef void (*on_NtWaitForKeyedEvent_enter_t)(CPUState* cpu, target_ulong pc, uint32_t KeyedEventHandle, uint32_t KeyValue, uint32_t Alertable, uint32_t Timeout);
typedef void (*on_NtWaitForKeyedEvent_return_t)(CPUState* cpu, target_ulong pc, uint32_t KeyedEventHandle, uint32_t KeyValue, uint32_t Alertable, uint32_t Timeout);
typedef void (*on_NtWaitForMultipleObjects_enter_t)(CPUState* cpu, target_ulong pc, uint32_t Count, uint32_t Handles, uint32_t WaitType, uint32_t Alertable, uint32_t Timeout);
typedef void (*on_NtWaitForMultipleObjects_return_t)(CPUState* cpu, target_ulong pc, uint32_t Count, uint32_t Handles, uint32_t WaitType, uint32_t Alertable, uint32_t Timeout);
typedef void (*on_NtWaitForMultipleObjects32_enter_t)(CPUState* cpu, target_ulong pc, uint32_t Count, uint32_t Handles, uint32_t WaitType, uint32_t Alertable, uint32_t Timeout);
typedef void (*on_NtWaitForMultipleObjects32_return_t)(CPUState* cpu, target_ulong pc, uint32_t Count, uint32_t Handles, uint32_t WaitType, uint32_t Alertable, uint32_t Timeout);
typedef void (*on_NtWaitForSingleObject_enter_t)(CPUState* cpu, target_ulong pc, uint32_t Handle, uint32_t Alertable, uint32_t Timeout);
typedef void (*on_NtWaitForSingleObject_return_t)(CPUState* cpu, target_ulong pc, uint32_t Handle, uint32_t Alertable, uint32_t Timeout);
typedef void (*on_NtWaitForWorkViaWorkerFactory_enter_t)(CPUState* cpu, target_ulong pc, uint32_t WorkerFactoryHandle, uint32_t MiniPacket);
typedef void (*on_NtWaitForWorkViaWorkerFactory_return_t)(CPUState* cpu, target_ulong pc, uint32_t WorkerFactoryHandle, uint32_t MiniPacket);
typedef void (*on_NtWaitHighEventPair_enter_t)(CPUState* cpu, target_ulong pc, uint32_t EventPairHandle);
typedef void (*on_NtWaitHighEventPair_return_t)(CPUState* cpu, target_ulong pc, uint32_t EventPairHandle);
typedef void (*on_NtWaitLowEventPair_enter_t)(CPUState* cpu, target_ulong pc, uint32_t EventPairHandle);
typedef void (*on_NtWaitLowEventPair_return_t)(CPUState* cpu, target_ulong pc, uint32_t EventPairHandle);
typedef void (*on_NtWorkerFactoryWorkerReady_enter_t)(CPUState* cpu, target_ulong pc, uint32_t WorkerFactoryHandle);
typedef void (*on_NtWorkerFactoryWorkerReady_return_t)(CPUState* cpu, target_ulong pc, uint32_t WorkerFactoryHandle);
typedef void (*on_NtWriteFile_enter_t)(CPUState* cpu, target_ulong pc, uint32_t FileHandle, uint32_t Event, uint32_t ApcRoutine, uint32_t ApcContext, uint32_t IoStatusBlock, uint32_t Buffer, uint32_t Length, uint32_t ByteOffset, uint32_t Key);
typedef void (*on_NtWriteFile_return_t)(CPUState* cpu, target_ulong pc, uint32_t FileHandle, uint32_t Event, uint32_t ApcRoutine, uint32_t ApcContext, uint32_t IoStatusBlock, uint32_t Buffer, uint32_t Length, uint32_t ByteOffset, uint32_t Key);
typedef void (*on_NtWriteFileGather_enter_t)(CPUState* cpu, target_ulong pc, uint32_t FileHandle, uint32_t Event, uint32_t ApcRoutine, uint32_t ApcContext, uint32_t IoStatusBlock, uint32_t SegmentArray, uint32_t Length, uint32_t ByteOffset, uint32_t Key);
typedef void (*on_NtWriteFileGather_return_t)(CPUState* cpu, target_ulong pc, uint32_t FileHandle, uint32_t Event, uint32_t ApcRoutine, uint32_t ApcContext, uint32_t IoStatusBlock, uint32_t SegmentArray, uint32_t Length, uint32_t ByteOffset, uint32_t Key);
typedef void (*on_NtWriteRequestData_enter_t)(CPUState* cpu, target_ulong pc, uint32_t PortHandle, uint32_t Message, uint32_t DataEntryIndex, uint32_t Buffer, uint32_t BufferSize, uint32_t NumberOfBytesWritten);
typedef void (*on_NtWriteRequestData_return_t)(CPUState* cpu, target_ulong pc, uint32_t PortHandle, uint32_t Message, uint32_t DataEntryIndex, uint32_t Buffer, uint32_t BufferSize, uint32_t NumberOfBytesWritten);
typedef void (*on_NtWriteVirtualMemory_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ProcessHandle, uint32_t BaseAddress, uint32_t Buffer, uint32_t BufferSize, uint32_t NumberOfBytesWritten);
typedef void (*on_NtWriteVirtualMemory_return_t)(CPUState* cpu, target_ulong pc, uint32_t ProcessHandle, uint32_t BaseAddress, uint32_t Buffer, uint32_t BufferSize, uint32_t NumberOfBytesWritten);
typedef void (*on_NtYieldExecution_enter_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_NtYieldExecution_return_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_rt_sigaction_enter_t)(CPUState* cpu, target_ulong pc, int32_t sig, uint32_t act, uint32_t oact, uint32_t sigsetsize);
typedef void (*on_rt_sigaction_return_t)(CPUState* cpu, target_ulong pc, int32_t sig, uint32_t act, uint32_t oact, uint32_t sigsetsize);
typedef void (*on_set_thread_area_enter_t)(CPUState* cpu, target_ulong pc, uint32_t u_info);
typedef void (*on_set_thread_area_return_t)(CPUState* cpu, target_ulong pc, uint32_t u_info);
typedef void (*on_sigaction_enter_t)(CPUState* cpu, target_ulong pc, int32_t sig, uint32_t act, uint32_t oact);
typedef void (*on_sigaction_return_t)(CPUState* cpu, target_ulong pc, int32_t sig, uint32_t act, uint32_t oact);
typedef void (*on_sigsuspend_enter_t)(CPUState* cpu, target_ulong pc, int32_t restart, uint32_t oldmask, uint32_t mask);
typedef void (*on_sigsuspend_return_t)(CPUState* cpu, target_ulong pc, int32_t restart, uint32_t oldmask, uint32_t mask);
typedef void (*on_sys_access_enter_t)(CPUState* cpu, target_ulong pc, uint32_t filename, int32_t mode);
typedef void (*on_sys_access_return_t)(CPUState* cpu, target_ulong pc, uint32_t filename, int32_t mode);
typedef void (*on_sys_acct_enter_t)(CPUState* cpu, target_ulong pc, uint32_t name);
typedef void (*on_sys_acct_return_t)(CPUState* cpu, target_ulong pc, uint32_t name);
typedef void (*on_sys_add_key_enter_t)(CPUState* cpu, target_ulong pc, uint32_t _type, uint32_t _description, uint32_t _payload, uint32_t plen, uint32_t destringid);
typedef void (*on_sys_add_key_return_t)(CPUState* cpu, target_ulong pc, uint32_t _type, uint32_t _description, uint32_t _payload, uint32_t plen, uint32_t destringid);
typedef void (*on_sys_adjtimex_enter_t)(CPUState* cpu, target_ulong pc, uint32_t txc_p);
typedef void (*on_sys_adjtimex_return_t)(CPUState* cpu, target_ulong pc, uint32_t txc_p);
typedef void (*on_sys_alarm_enter_t)(CPUState* cpu, target_ulong pc, uint32_t seconds);
typedef void (*on_sys_alarm_return_t)(CPUState* cpu, target_ulong pc, uint32_t seconds);
typedef void (*on_sys_bdflush_enter_t)(CPUState* cpu, target_ulong pc, int32_t func, int32_t _data);
typedef void (*on_sys_bdflush_return_t)(CPUState* cpu, target_ulong pc, int32_t func, int32_t _data);
typedef void (*on_sys_brk_enter_t)(CPUState* cpu, target_ulong pc, uint32_t brk);
typedef void (*on_sys_brk_return_t)(CPUState* cpu, target_ulong pc, uint32_t brk);
typedef void (*on_sys_capget_enter_t)(CPUState* cpu, target_ulong pc, uint32_t header, uint32_t dataptr);
typedef void (*on_sys_capget_return_t)(CPUState* cpu, target_ulong pc, uint32_t header, uint32_t dataptr);
typedef void (*on_sys_capset_enter_t)(CPUState* cpu, target_ulong pc, uint32_t header, uint32_t _data);
typedef void (*on_sys_capset_return_t)(CPUState* cpu, target_ulong pc, uint32_t header, uint32_t _data);
typedef void (*on_sys_chdir_enter_t)(CPUState* cpu, target_ulong pc, uint32_t filename);
typedef void (*on_sys_chdir_return_t)(CPUState* cpu, target_ulong pc, uint32_t filename);
typedef void (*on_sys_chmod_enter_t)(CPUState* cpu, target_ulong pc, uint32_t filename, uint32_t mode);
typedef void (*on_sys_chmod_return_t)(CPUState* cpu, target_ulong pc, uint32_t filename, uint32_t mode);
typedef void (*on_sys_chown_enter_t)(CPUState* cpu, target_ulong pc, uint32_t filename, uint32_t user, uint32_t group);
typedef void (*on_sys_chown_return_t)(CPUState* cpu, target_ulong pc, uint32_t filename, uint32_t user, uint32_t group);
typedef void (*on_sys_chown16_enter_t)(CPUState* cpu, target_ulong pc, uint32_t filename, uint32_t user, uint32_t group);
typedef void (*on_sys_chown16_return_t)(CPUState* cpu, target_ulong pc, uint32_t filename, uint32_t user, uint32_t group);
typedef void (*on_sys_chroot_enter_t)(CPUState* cpu, target_ulong pc, uint32_t filename);
typedef void (*on_sys_chroot_return_t)(CPUState* cpu, target_ulong pc, uint32_t filename);
typedef void (*on_sys_clock_adjtime_enter_t)(CPUState* cpu, target_ulong pc, uint32_t which_clock, uint32_t tx);
typedef void (*on_sys_clock_adjtime_return_t)(CPUState* cpu, target_ulong pc, uint32_t which_clock, uint32_t tx);
typedef void (*on_sys_clock_getres_enter_t)(CPUState* cpu, target_ulong pc, uint32_t which_clock, uint32_t tp);
typedef void (*on_sys_clock_getres_return_t)(CPUState* cpu, target_ulong pc, uint32_t which_clock, uint32_t tp);
typedef void (*on_sys_clock_gettime_enter_t)(CPUState* cpu, target_ulong pc, uint32_t which_clock, uint32_t tp);
typedef void (*on_sys_clock_gettime_return_t)(CPUState* cpu, target_ulong pc, uint32_t which_clock, uint32_t tp);
typedef void (*on_sys_clock_nanosleep_enter_t)(CPUState* cpu, target_ulong pc, uint32_t which_clock, int32_t flags, uint32_t rqtp, uint32_t rmtp);
typedef void (*on_sys_clock_nanosleep_return_t)(CPUState* cpu, target_ulong pc, uint32_t which_clock, int32_t flags, uint32_t rqtp, uint32_t rmtp);
typedef void (*on_sys_clock_settime_enter_t)(CPUState* cpu, target_ulong pc, uint32_t which_clock, uint32_t tp);
typedef void (*on_sys_clock_settime_return_t)(CPUState* cpu, target_ulong pc, uint32_t which_clock, uint32_t tp);
typedef void (*on_sys_clone_enter_t)(CPUState* cpu, target_ulong pc, uint32_t flags, uint32_t child_stack, uint32_t ptid, uint32_t ctid, uint32_t regs);
typedef void (*on_sys_clone_return_t)(CPUState* cpu, target_ulong pc, uint32_t flags, uint32_t child_stack, uint32_t ptid, uint32_t ctid, uint32_t regs);
typedef void (*on_sys_close_enter_t)(CPUState* cpu, target_ulong pc, uint32_t fd);
typedef void (*on_sys_close_return_t)(CPUState* cpu, target_ulong pc, uint32_t fd);
typedef void (*on_sys_creat_enter_t)(CPUState* cpu, target_ulong pc, uint32_t pathname, int32_t mode);
typedef void (*on_sys_creat_return_t)(CPUState* cpu, target_ulong pc, uint32_t pathname, int32_t mode);
typedef void (*on_sys_delete_module_enter_t)(CPUState* cpu, target_ulong pc, uint32_t name_user, uint32_t flags);
typedef void (*on_sys_delete_module_return_t)(CPUState* cpu, target_ulong pc, uint32_t name_user, uint32_t flags);
typedef void (*on_sys_dup_enter_t)(CPUState* cpu, target_ulong pc, uint32_t fildes);
typedef void (*on_sys_dup_return_t)(CPUState* cpu, target_ulong pc, uint32_t fildes);
typedef void (*on_sys_dup2_enter_t)(CPUState* cpu, target_ulong pc, uint32_t oldfd, uint32_t newfd);
typedef void (*on_sys_dup2_return_t)(CPUState* cpu, target_ulong pc, uint32_t oldfd, uint32_t newfd);
typedef void (*on_sys_dup3_enter_t)(CPUState* cpu, target_ulong pc, uint32_t oldfd, uint32_t newfd, int32_t flags);
typedef void (*on_sys_dup3_return_t)(CPUState* cpu, target_ulong pc, uint32_t oldfd, uint32_t newfd, int32_t flags);
typedef void (*on_sys_epoll_create_enter_t)(CPUState* cpu, target_ulong pc, int32_t size);
typedef void (*on_sys_epoll_create_return_t)(CPUState* cpu, target_ulong pc, int32_t size);
typedef void (*on_sys_epoll_create1_enter_t)(CPUState* cpu, target_ulong pc, int32_t flags);
typedef void (*on_sys_epoll_create1_return_t)(CPUState* cpu, target_ulong pc, int32_t flags);
typedef void (*on_sys_epoll_ctl_enter_t)(CPUState* cpu, target_ulong pc, int32_t epfd, int32_t op, int32_t fd, uint32_t event);
typedef void (*on_sys_epoll_ctl_return_t)(CPUState* cpu, target_ulong pc, int32_t epfd, int32_t op, int32_t fd, uint32_t event);
typedef void (*on_sys_epoll_pwait_enter_t)(CPUState* cpu, target_ulong pc, int32_t epfd, uint32_t events, int32_t maxevents, int32_t timeout, uint32_t sigmask, uint32_t sigsetsize);
typedef void (*on_sys_epoll_pwait_return_t)(CPUState* cpu, target_ulong pc, int32_t epfd, uint32_t events, int32_t maxevents, int32_t timeout, uint32_t sigmask, uint32_t sigsetsize);
typedef void (*on_sys_epoll_wait_enter_t)(CPUState* cpu, target_ulong pc, int32_t epfd, uint32_t events, int32_t maxevents, int32_t timeout);
typedef void (*on_sys_epoll_wait_return_t)(CPUState* cpu, target_ulong pc, int32_t epfd, uint32_t events, int32_t maxevents, int32_t timeout);
typedef void (*on_sys_eventfd_enter_t)(CPUState* cpu, target_ulong pc, uint32_t count);
typedef void (*on_sys_eventfd_return_t)(CPUState* cpu, target_ulong pc, uint32_t count);
typedef void (*on_sys_eventfd2_enter_t)(CPUState* cpu, target_ulong pc, uint32_t count, int32_t flags);
typedef void (*on_sys_eventfd2_return_t)(CPUState* cpu, target_ulong pc, uint32_t count, int32_t flags);
typedef void (*on_sys_execve_enter_t)(CPUState* cpu, target_ulong pc, uint32_t filename, uint32_t argv, uint32_t envp);
typedef void (*on_sys_execve_return_t)(CPUState* cpu, target_ulong pc, uint32_t filename, uint32_t argv, uint32_t envp);
typedef void (*on_sys_exit_enter_t)(CPUState* cpu, target_ulong pc, int32_t error_code);
typedef void (*on_sys_exit_return_t)(CPUState* cpu, target_ulong pc, int32_t error_code);
typedef void (*on_sys_exit_group_enter_t)(CPUState* cpu, target_ulong pc, int32_t error_code);
typedef void (*on_sys_exit_group_return_t)(CPUState* cpu, target_ulong pc, int32_t error_code);
typedef void (*on_sys_faccessat_enter_t)(CPUState* cpu, target_ulong pc, int32_t dfd, uint32_t filename, int32_t mode);
typedef void (*on_sys_faccessat_return_t)(CPUState* cpu, target_ulong pc, int32_t dfd, uint32_t filename, int32_t mode);
typedef void (*on_sys_fadvise64_enter_t)(CPUState* cpu, target_ulong pc, int32_t fd, uint64_t offset, uint32_t len, int32_t advice);
typedef void (*on_sys_fadvise64_return_t)(CPUState* cpu, target_ulong pc, int32_t fd, uint64_t offset, uint32_t len, int32_t advice);
typedef void (*on_sys_fadvise64_64_enter_t)(CPUState* cpu, target_ulong pc, int32_t fd, uint64_t offset, uint64_t len, int32_t advice);
typedef void (*on_sys_fadvise64_64_return_t)(CPUState* cpu, target_ulong pc, int32_t fd, uint64_t offset, uint64_t len, int32_t advice);
typedef void (*on_sys_fallocate_enter_t)(CPUState* cpu, target_ulong pc, int32_t fd, int32_t mode, uint64_t offset, uint64_t len);
typedef void (*on_sys_fallocate_return_t)(CPUState* cpu, target_ulong pc, int32_t fd, int32_t mode, uint64_t offset, uint64_t len);
typedef void (*on_sys_fanotify_init_enter_t)(CPUState* cpu, target_ulong pc, uint32_t flags, uint32_t event_f_flags);
typedef void (*on_sys_fanotify_init_return_t)(CPUState* cpu, target_ulong pc, uint32_t flags, uint32_t event_f_flags);
typedef void (*on_sys_fanotify_mark_enter_t)(CPUState* cpu, target_ulong pc, int32_t fanotify_fd, uint32_t flags, uint64_t mask, int32_t fd, uint32_t pathname);
typedef void (*on_sys_fanotify_mark_return_t)(CPUState* cpu, target_ulong pc, int32_t fanotify_fd, uint32_t flags, uint64_t mask, int32_t fd, uint32_t pathname);
typedef void (*on_sys_fchdir_enter_t)(CPUState* cpu, target_ulong pc, uint32_t fd);
typedef void (*on_sys_fchdir_return_t)(CPUState* cpu, target_ulong pc, uint32_t fd);
typedef void (*on_sys_fchmod_enter_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t mode);
typedef void (*on_sys_fchmod_return_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t mode);
typedef void (*on_sys_fchmodat_enter_t)(CPUState* cpu, target_ulong pc, int32_t dfd, uint32_t filename, uint32_t mode);
typedef void (*on_sys_fchmodat_return_t)(CPUState* cpu, target_ulong pc, int32_t dfd, uint32_t filename, uint32_t mode);
typedef void (*on_sys_fchown_enter_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t user, uint32_t group);
typedef void (*on_sys_fchown_return_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t user, uint32_t group);
typedef void (*on_sys_fchown16_enter_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t user, uint32_t group);
typedef void (*on_sys_fchown16_return_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t user, uint32_t group);
typedef void (*on_sys_fchownat_enter_t)(CPUState* cpu, target_ulong pc, int32_t dfd, uint32_t filename, uint32_t user, uint32_t group, int32_t flag);
typedef void (*on_sys_fchownat_return_t)(CPUState* cpu, target_ulong pc, int32_t dfd, uint32_t filename, uint32_t user, uint32_t group, int32_t flag);
typedef void (*on_sys_fcntl_enter_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t cmd, uint32_t arg);
typedef void (*on_sys_fcntl_return_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t cmd, uint32_t arg);
typedef void (*on_sys_fcntl64_enter_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t cmd, uint32_t arg);
typedef void (*on_sys_fcntl64_return_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t cmd, uint32_t arg);
typedef void (*on_sys_fdatasync_enter_t)(CPUState* cpu, target_ulong pc, uint32_t fd);
typedef void (*on_sys_fdatasync_return_t)(CPUState* cpu, target_ulong pc, uint32_t fd);
typedef void (*on_sys_fgetxattr_enter_t)(CPUState* cpu, target_ulong pc, int32_t fd, uint32_t name, uint32_t value, uint32_t size);
typedef void (*on_sys_fgetxattr_return_t)(CPUState* cpu, target_ulong pc, int32_t fd, uint32_t name, uint32_t value, uint32_t size);
typedef void (*on_sys_flistxattr_enter_t)(CPUState* cpu, target_ulong pc, int32_t fd, uint32_t list, uint32_t size);
typedef void (*on_sys_flistxattr_return_t)(CPUState* cpu, target_ulong pc, int32_t fd, uint32_t list, uint32_t size);
typedef void (*on_sys_flock_enter_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t cmd);
typedef void (*on_sys_flock_return_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t cmd);
typedef void (*on_sys_fork_enter_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_sys_fork_return_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_sys_fremovexattr_enter_t)(CPUState* cpu, target_ulong pc, int32_t fd, uint32_t name);
typedef void (*on_sys_fremovexattr_return_t)(CPUState* cpu, target_ulong pc, int32_t fd, uint32_t name);
typedef void (*on_sys_fsetxattr_enter_t)(CPUState* cpu, target_ulong pc, int32_t fd, uint32_t name, uint32_t value, uint32_t size, int32_t flags);
typedef void (*on_sys_fsetxattr_return_t)(CPUState* cpu, target_ulong pc, int32_t fd, uint32_t name, uint32_t value, uint32_t size, int32_t flags);
typedef void (*on_sys_fstat_enter_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t statbuf);
typedef void (*on_sys_fstat_return_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t statbuf);
typedef void (*on_sys_fstat64_enter_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t statbuf);
typedef void (*on_sys_fstat64_return_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t statbuf);
typedef void (*on_sys_fstatat64_enter_t)(CPUState* cpu, target_ulong pc, int32_t dfd, uint32_t filename, uint32_t statbuf, int32_t flag);
typedef void (*on_sys_fstatat64_return_t)(CPUState* cpu, target_ulong pc, int32_t dfd, uint32_t filename, uint32_t statbuf, int32_t flag);
typedef void (*on_sys_fstatfs_enter_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t buf);
typedef void (*on_sys_fstatfs_return_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t buf);
typedef void (*on_sys_fstatfs64_enter_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t sz, uint32_t buf);
typedef void (*on_sys_fstatfs64_return_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t sz, uint32_t buf);
typedef void (*on_sys_fsync_enter_t)(CPUState* cpu, target_ulong pc, uint32_t fd);
typedef void (*on_sys_fsync_return_t)(CPUState* cpu, target_ulong pc, uint32_t fd);
typedef void (*on_sys_ftruncate_enter_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t length);
typedef void (*on_sys_ftruncate_return_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t length);
typedef void (*on_sys_ftruncate64_enter_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint64_t length);
typedef void (*on_sys_ftruncate64_return_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint64_t length);
typedef void (*on_sys_futex_enter_t)(CPUState* cpu, target_ulong pc, uint32_t uaddr, int32_t op, uint32_t val, uint32_t utime, uint32_t uaddr2, uint32_t val3);
typedef void (*on_sys_futex_return_t)(CPUState* cpu, target_ulong pc, uint32_t uaddr, int32_t op, uint32_t val, uint32_t utime, uint32_t uaddr2, uint32_t val3);
typedef void (*on_sys_futimesat_enter_t)(CPUState* cpu, target_ulong pc, int32_t dfd, uint32_t filename, uint32_t utimes);
typedef void (*on_sys_futimesat_return_t)(CPUState* cpu, target_ulong pc, int32_t dfd, uint32_t filename, uint32_t utimes);
typedef void (*on_sys_get_mempolicy_enter_t)(CPUState* cpu, target_ulong pc, uint32_t policy, uint32_t nmask, uint32_t maxnode, uint32_t addr, uint32_t flags);
typedef void (*on_sys_get_mempolicy_return_t)(CPUState* cpu, target_ulong pc, uint32_t policy, uint32_t nmask, uint32_t maxnode, uint32_t addr, uint32_t flags);
typedef void (*on_sys_get_robust_list_enter_t)(CPUState* cpu, target_ulong pc, int32_t pid, uint32_t head_ptr, uint32_t len_ptr);
typedef void (*on_sys_get_robust_list_return_t)(CPUState* cpu, target_ulong pc, int32_t pid, uint32_t head_ptr, uint32_t len_ptr);
typedef void (*on_sys_getcpu_enter_t)(CPUState* cpu, target_ulong pc, uint32_t _cpu, uint32_t node, uint32_t cache);
typedef void (*on_sys_getcpu_return_t)(CPUState* cpu, target_ulong pc, uint32_t _cpu, uint32_t node, uint32_t cache);
typedef void (*on_sys_getcwd_enter_t)(CPUState* cpu, target_ulong pc, uint32_t buf, uint32_t size);
typedef void (*on_sys_getcwd_return_t)(CPUState* cpu, target_ulong pc, uint32_t buf, uint32_t size);
typedef void (*on_sys_getdents_enter_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t dirent, uint32_t count);
typedef void (*on_sys_getdents_return_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t dirent, uint32_t count);
typedef void (*on_sys_getdents64_enter_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t dirent, uint32_t count);
typedef void (*on_sys_getdents64_return_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t dirent, uint32_t count);
typedef void (*on_sys_getegid_enter_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_sys_getegid_return_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_sys_getegid16_enter_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_sys_getegid16_return_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_sys_geteuid_enter_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_sys_geteuid_return_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_sys_geteuid16_enter_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_sys_geteuid16_return_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_sys_getgid_enter_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_sys_getgid_return_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_sys_getgid16_enter_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_sys_getgid16_return_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_sys_getgroups_enter_t)(CPUState* cpu, target_ulong pc, int32_t gidsetsize, uint32_t grouplist);
typedef void (*on_sys_getgroups_return_t)(CPUState* cpu, target_ulong pc, int32_t gidsetsize, uint32_t grouplist);
typedef void (*on_sys_getgroups16_enter_t)(CPUState* cpu, target_ulong pc, int32_t gidsetsize, uint32_t grouplist);
typedef void (*on_sys_getgroups16_return_t)(CPUState* cpu, target_ulong pc, int32_t gidsetsize, uint32_t grouplist);
typedef void (*on_sys_getitimer_enter_t)(CPUState* cpu, target_ulong pc, int32_t which, uint32_t value);
typedef void (*on_sys_getitimer_return_t)(CPUState* cpu, target_ulong pc, int32_t which, uint32_t value);
typedef void (*on_sys_getpgid_enter_t)(CPUState* cpu, target_ulong pc, uint32_t pid);
typedef void (*on_sys_getpgid_return_t)(CPUState* cpu, target_ulong pc, uint32_t pid);
typedef void (*on_sys_getpgrp_enter_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_sys_getpgrp_return_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_sys_getpid_enter_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_sys_getpid_return_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_sys_getppid_enter_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_sys_getppid_return_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_sys_getpriority_enter_t)(CPUState* cpu, target_ulong pc, int32_t which, int32_t who);
typedef void (*on_sys_getpriority_return_t)(CPUState* cpu, target_ulong pc, int32_t which, int32_t who);
typedef void (*on_sys_getresgid_enter_t)(CPUState* cpu, target_ulong pc, uint32_t rgid, uint32_t egid, uint32_t sgid);
typedef void (*on_sys_getresgid_return_t)(CPUState* cpu, target_ulong pc, uint32_t rgid, uint32_t egid, uint32_t sgid);
typedef void (*on_sys_getresgid16_enter_t)(CPUState* cpu, target_ulong pc, uint32_t rgid, uint32_t egid, uint32_t sgid);
typedef void (*on_sys_getresgid16_return_t)(CPUState* cpu, target_ulong pc, uint32_t rgid, uint32_t egid, uint32_t sgid);
typedef void (*on_sys_getresuid_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ruid, uint32_t euid, uint32_t suid);
typedef void (*on_sys_getresuid_return_t)(CPUState* cpu, target_ulong pc, uint32_t ruid, uint32_t euid, uint32_t suid);
typedef void (*on_sys_getresuid16_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ruid, uint32_t euid, uint32_t suid);
typedef void (*on_sys_getresuid16_return_t)(CPUState* cpu, target_ulong pc, uint32_t ruid, uint32_t euid, uint32_t suid);
typedef void (*on_sys_getrlimit_enter_t)(CPUState* cpu, target_ulong pc, uint32_t resource, uint32_t rlim);
typedef void (*on_sys_getrlimit_return_t)(CPUState* cpu, target_ulong pc, uint32_t resource, uint32_t rlim);
typedef void (*on_sys_getrusage_enter_t)(CPUState* cpu, target_ulong pc, int32_t who, uint32_t ru);
typedef void (*on_sys_getrusage_return_t)(CPUState* cpu, target_ulong pc, int32_t who, uint32_t ru);
typedef void (*on_sys_getsid_enter_t)(CPUState* cpu, target_ulong pc, uint32_t pid);
typedef void (*on_sys_getsid_return_t)(CPUState* cpu, target_ulong pc, uint32_t pid);
typedef void (*on_sys_gettid_enter_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_sys_gettid_return_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_sys_gettimeofday_enter_t)(CPUState* cpu, target_ulong pc, uint32_t tv, uint32_t tz);
typedef void (*on_sys_gettimeofday_return_t)(CPUState* cpu, target_ulong pc, uint32_t tv, uint32_t tz);
typedef void (*on_sys_getuid_enter_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_sys_getuid_return_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_sys_getuid16_enter_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_sys_getuid16_return_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_sys_getxattr_enter_t)(CPUState* cpu, target_ulong pc, uint32_t path, uint32_t name, uint32_t value, uint32_t size);
typedef void (*on_sys_getxattr_return_t)(CPUState* cpu, target_ulong pc, uint32_t path, uint32_t name, uint32_t value, uint32_t size);
typedef void (*on_sys_init_module_enter_t)(CPUState* cpu, target_ulong pc, uint32_t umod, uint32_t len, uint32_t uargs);
typedef void (*on_sys_init_module_return_t)(CPUState* cpu, target_ulong pc, uint32_t umod, uint32_t len, uint32_t uargs);
typedef void (*on_sys_inotify_add_watch_enter_t)(CPUState* cpu, target_ulong pc, int32_t fd, uint32_t path, uint32_t mask);
typedef void (*on_sys_inotify_add_watch_return_t)(CPUState* cpu, target_ulong pc, int32_t fd, uint32_t path, uint32_t mask);
typedef void (*on_sys_inotify_init_enter_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_sys_inotify_init_return_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_sys_inotify_init1_enter_t)(CPUState* cpu, target_ulong pc, int32_t flags);
typedef void (*on_sys_inotify_init1_return_t)(CPUState* cpu, target_ulong pc, int32_t flags);
typedef void (*on_sys_inotify_rm_watch_enter_t)(CPUState* cpu, target_ulong pc, int32_t fd, int32_t wd);
typedef void (*on_sys_inotify_rm_watch_return_t)(CPUState* cpu, target_ulong pc, int32_t fd, int32_t wd);
typedef void (*on_sys_io_cancel_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ctx_id, uint32_t iocb, uint32_t result);
typedef void (*on_sys_io_cancel_return_t)(CPUState* cpu, target_ulong pc, uint32_t ctx_id, uint32_t iocb, uint32_t result);
typedef void (*on_sys_io_destroy_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ctx);
typedef void (*on_sys_io_destroy_return_t)(CPUState* cpu, target_ulong pc, uint32_t ctx);
typedef void (*on_sys_io_getevents_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ctx_id, int32_t min_nr, int32_t nr, uint32_t events, uint32_t timeout);
typedef void (*on_sys_io_getevents_return_t)(CPUState* cpu, target_ulong pc, uint32_t ctx_id, int32_t min_nr, int32_t nr, uint32_t events, uint32_t timeout);
typedef void (*on_sys_io_setup_enter_t)(CPUState* cpu, target_ulong pc, uint32_t nr_reqs, uint32_t ctx);
typedef void (*on_sys_io_setup_return_t)(CPUState* cpu, target_ulong pc, uint32_t nr_reqs, uint32_t ctx);
typedef void (*on_sys_io_submit_enter_t)(CPUState* cpu, target_ulong pc, uint32_t arg0, int32_t arg1, uint32_t arg2);
typedef void (*on_sys_io_submit_return_t)(CPUState* cpu, target_ulong pc, uint32_t arg0, int32_t arg1, uint32_t arg2);
typedef void (*on_sys_ioctl_enter_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t cmd, uint32_t arg);
typedef void (*on_sys_ioctl_return_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t cmd, uint32_t arg);
typedef void (*on_sys_ioperm_enter_t)(CPUState* cpu, target_ulong pc, uint32_t from, uint32_t num, int32_t on);
typedef void (*on_sys_ioperm_return_t)(CPUState* cpu, target_ulong pc, uint32_t from, uint32_t num, int32_t on);
typedef void (*on_sys_iopl_enter_t)(CPUState* cpu, target_ulong pc, int32_t level);
typedef void (*on_sys_iopl_return_t)(CPUState* cpu, target_ulong pc, int32_t level);
typedef void (*on_sys_ioprio_get_enter_t)(CPUState* cpu, target_ulong pc, int32_t which, int32_t who);
typedef void (*on_sys_ioprio_get_return_t)(CPUState* cpu, target_ulong pc, int32_t which, int32_t who);
typedef void (*on_sys_ioprio_set_enter_t)(CPUState* cpu, target_ulong pc, int32_t which, int32_t who, int32_t ioprio);
typedef void (*on_sys_ioprio_set_return_t)(CPUState* cpu, target_ulong pc, int32_t which, int32_t who, int32_t ioprio);
typedef void (*on_sys_ipc_enter_t)(CPUState* cpu, target_ulong pc, uint32_t call, int32_t first, uint32_t second, uint32_t third, uint32_t ptr, int32_t fifth);
typedef void (*on_sys_ipc_return_t)(CPUState* cpu, target_ulong pc, uint32_t call, int32_t first, uint32_t second, uint32_t third, uint32_t ptr, int32_t fifth);
typedef void (*on_sys_kexec_load_enter_t)(CPUState* cpu, target_ulong pc, uint32_t entry, uint32_t nr_segments, uint32_t segments, uint32_t flags);
typedef void (*on_sys_kexec_load_return_t)(CPUState* cpu, target_ulong pc, uint32_t entry, uint32_t nr_segments, uint32_t segments, uint32_t flags);
typedef void (*on_sys_keyctl_enter_t)(CPUState* cpu, target_ulong pc, int32_t cmd, uint32_t arg2, uint32_t arg3, uint32_t arg4, uint32_t arg5);
typedef void (*on_sys_keyctl_return_t)(CPUState* cpu, target_ulong pc, int32_t cmd, uint32_t arg2, uint32_t arg3, uint32_t arg4, uint32_t arg5);
typedef void (*on_sys_kill_enter_t)(CPUState* cpu, target_ulong pc, int32_t pid, int32_t sig);
typedef void (*on_sys_kill_return_t)(CPUState* cpu, target_ulong pc, int32_t pid, int32_t sig);
typedef void (*on_sys_lchown_enter_t)(CPUState* cpu, target_ulong pc, uint32_t filename, uint32_t user, uint32_t group);
typedef void (*on_sys_lchown_return_t)(CPUState* cpu, target_ulong pc, uint32_t filename, uint32_t user, uint32_t group);
typedef void (*on_sys_lchown16_enter_t)(CPUState* cpu, target_ulong pc, uint32_t filename, uint32_t user, uint32_t group);
typedef void (*on_sys_lchown16_return_t)(CPUState* cpu, target_ulong pc, uint32_t filename, uint32_t user, uint32_t group);
typedef void (*on_sys_lgetxattr_enter_t)(CPUState* cpu, target_ulong pc, uint32_t path, uint32_t name, uint32_t value, uint32_t size);
typedef void (*on_sys_lgetxattr_return_t)(CPUState* cpu, target_ulong pc, uint32_t path, uint32_t name, uint32_t value, uint32_t size);
typedef void (*on_sys_link_enter_t)(CPUState* cpu, target_ulong pc, uint32_t oldname, uint32_t newname);
typedef void (*on_sys_link_return_t)(CPUState* cpu, target_ulong pc, uint32_t oldname, uint32_t newname);
typedef void (*on_sys_linkat_enter_t)(CPUState* cpu, target_ulong pc, int32_t olddfd, uint32_t oldname, int32_t newdfd, uint32_t newname, int32_t flags);
typedef void (*on_sys_linkat_return_t)(CPUState* cpu, target_ulong pc, int32_t olddfd, uint32_t oldname, int32_t newdfd, uint32_t newname, int32_t flags);
typedef void (*on_sys_listxattr_enter_t)(CPUState* cpu, target_ulong pc, uint32_t path, uint32_t list, uint32_t size);
typedef void (*on_sys_listxattr_return_t)(CPUState* cpu, target_ulong pc, uint32_t path, uint32_t list, uint32_t size);
typedef void (*on_sys_llistxattr_enter_t)(CPUState* cpu, target_ulong pc, uint32_t path, uint32_t list, uint32_t size);
typedef void (*on_sys_llistxattr_return_t)(CPUState* cpu, target_ulong pc, uint32_t path, uint32_t list, uint32_t size);
typedef void (*on_sys_llseek_enter_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t offset_high, uint32_t offset_low, uint32_t result, uint32_t origin);
typedef void (*on_sys_llseek_return_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t offset_high, uint32_t offset_low, uint32_t result, uint32_t origin);
typedef void (*on_sys_lookup_dcookie_enter_t)(CPUState* cpu, target_ulong pc, uint64_t cookie64, uint32_t buf, uint32_t len);
typedef void (*on_sys_lookup_dcookie_return_t)(CPUState* cpu, target_ulong pc, uint64_t cookie64, uint32_t buf, uint32_t len);
typedef void (*on_sys_lremovexattr_enter_t)(CPUState* cpu, target_ulong pc, uint32_t path, uint32_t name);
typedef void (*on_sys_lremovexattr_return_t)(CPUState* cpu, target_ulong pc, uint32_t path, uint32_t name);
typedef void (*on_sys_lseek_enter_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t offset, uint32_t origin);
typedef void (*on_sys_lseek_return_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t offset, uint32_t origin);
typedef void (*on_sys_lsetxattr_enter_t)(CPUState* cpu, target_ulong pc, uint32_t path, uint32_t name, uint32_t value, uint32_t size, int32_t flags);
typedef void (*on_sys_lsetxattr_return_t)(CPUState* cpu, target_ulong pc, uint32_t path, uint32_t name, uint32_t value, uint32_t size, int32_t flags);
typedef void (*on_sys_lstat_enter_t)(CPUState* cpu, target_ulong pc, uint32_t filename, uint32_t statbuf);
typedef void (*on_sys_lstat_return_t)(CPUState* cpu, target_ulong pc, uint32_t filename, uint32_t statbuf);
typedef void (*on_sys_lstat64_enter_t)(CPUState* cpu, target_ulong pc, uint32_t filename, uint32_t statbuf);
typedef void (*on_sys_lstat64_return_t)(CPUState* cpu, target_ulong pc, uint32_t filename, uint32_t statbuf);
typedef void (*on_sys_madvise_enter_t)(CPUState* cpu, target_ulong pc, uint32_t start, uint32_t len, int32_t behavior);
typedef void (*on_sys_madvise_return_t)(CPUState* cpu, target_ulong pc, uint32_t start, uint32_t len, int32_t behavior);
typedef void (*on_sys_mbind_enter_t)(CPUState* cpu, target_ulong pc, uint32_t start, uint32_t len, uint32_t mode, uint32_t nmask, uint32_t maxnode, uint32_t flags);
typedef void (*on_sys_mbind_return_t)(CPUState* cpu, target_ulong pc, uint32_t start, uint32_t len, uint32_t mode, uint32_t nmask, uint32_t maxnode, uint32_t flags);
typedef void (*on_sys_migrate_pages_enter_t)(CPUState* cpu, target_ulong pc, uint32_t pid, uint32_t maxnode, uint32_t from, uint32_t to);
typedef void (*on_sys_migrate_pages_return_t)(CPUState* cpu, target_ulong pc, uint32_t pid, uint32_t maxnode, uint32_t from, uint32_t to);
typedef void (*on_sys_mincore_enter_t)(CPUState* cpu, target_ulong pc, uint32_t start, uint32_t len, uint32_t vec);
typedef void (*on_sys_mincore_return_t)(CPUState* cpu, target_ulong pc, uint32_t start, uint32_t len, uint32_t vec);
typedef void (*on_sys_mkdir_enter_t)(CPUState* cpu, target_ulong pc, uint32_t pathname, int32_t mode);
typedef void (*on_sys_mkdir_return_t)(CPUState* cpu, target_ulong pc, uint32_t pathname, int32_t mode);
typedef void (*on_sys_mkdirat_enter_t)(CPUState* cpu, target_ulong pc, int32_t dfd, uint32_t pathname, int32_t mode);
typedef void (*on_sys_mkdirat_return_t)(CPUState* cpu, target_ulong pc, int32_t dfd, uint32_t pathname, int32_t mode);
typedef void (*on_sys_mknod_enter_t)(CPUState* cpu, target_ulong pc, uint32_t filename, int32_t mode, uint32_t dev);
typedef void (*on_sys_mknod_return_t)(CPUState* cpu, target_ulong pc, uint32_t filename, int32_t mode, uint32_t dev);
typedef void (*on_sys_mknodat_enter_t)(CPUState* cpu, target_ulong pc, int32_t dfd, uint32_t filename, int32_t mode, uint32_t dev);
typedef void (*on_sys_mknodat_return_t)(CPUState* cpu, target_ulong pc, int32_t dfd, uint32_t filename, int32_t mode, uint32_t dev);
typedef void (*on_sys_mlock_enter_t)(CPUState* cpu, target_ulong pc, uint32_t start, uint32_t len);
typedef void (*on_sys_mlock_return_t)(CPUState* cpu, target_ulong pc, uint32_t start, uint32_t len);
typedef void (*on_sys_mlockall_enter_t)(CPUState* cpu, target_ulong pc, int32_t flags);
typedef void (*on_sys_mlockall_return_t)(CPUState* cpu, target_ulong pc, int32_t flags);
typedef void (*on_sys_mmap_pgoff_enter_t)(CPUState* cpu, target_ulong pc, uint32_t addr, uint32_t len, uint32_t prot, uint32_t flags, uint32_t fd, uint32_t pgoff);
typedef void (*on_sys_mmap_pgoff_return_t)(CPUState* cpu, target_ulong pc, uint32_t addr, uint32_t len, uint32_t prot, uint32_t flags, uint32_t fd, uint32_t pgoff);
typedef void (*on_sys_modify_ldt_enter_t)(CPUState* cpu, target_ulong pc, int32_t func, uint32_t ptr, uint32_t bytecount);
typedef void (*on_sys_modify_ldt_return_t)(CPUState* cpu, target_ulong pc, int32_t func, uint32_t ptr, uint32_t bytecount);
typedef void (*on_sys_mount_enter_t)(CPUState* cpu, target_ulong pc, uint32_t dev_name, uint32_t dir_name, uint32_t type, uint32_t flags, uint32_t _data);
typedef void (*on_sys_mount_return_t)(CPUState* cpu, target_ulong pc, uint32_t dev_name, uint32_t dir_name, uint32_t type, uint32_t flags, uint32_t _data);
typedef void (*on_sys_move_pages_enter_t)(CPUState* cpu, target_ulong pc, uint32_t pid, uint32_t nr_pages, uint32_t pages, uint32_t nodes, uint32_t status, int32_t flags);
typedef void (*on_sys_move_pages_return_t)(CPUState* cpu, target_ulong pc, uint32_t pid, uint32_t nr_pages, uint32_t pages, uint32_t nodes, uint32_t status, int32_t flags);
typedef void (*on_sys_mprotect_enter_t)(CPUState* cpu, target_ulong pc, uint32_t start, uint32_t len, uint32_t prot);
typedef void (*on_sys_mprotect_return_t)(CPUState* cpu, target_ulong pc, uint32_t start, uint32_t len, uint32_t prot);
typedef void (*on_sys_mq_getsetattr_enter_t)(CPUState* cpu, target_ulong pc, uint32_t mqdes, uint32_t mqstat, uint32_t omqstat);
typedef void (*on_sys_mq_getsetattr_return_t)(CPUState* cpu, target_ulong pc, uint32_t mqdes, uint32_t mqstat, uint32_t omqstat);
typedef void (*on_sys_mq_notify_enter_t)(CPUState* cpu, target_ulong pc, uint32_t mqdes, uint32_t notification);
typedef void (*on_sys_mq_notify_return_t)(CPUState* cpu, target_ulong pc, uint32_t mqdes, uint32_t notification);
typedef void (*on_sys_mq_open_enter_t)(CPUState* cpu, target_ulong pc, uint32_t name, int32_t oflag, uint32_t mode, uint32_t attr);
typedef void (*on_sys_mq_open_return_t)(CPUState* cpu, target_ulong pc, uint32_t name, int32_t oflag, uint32_t mode, uint32_t attr);
typedef void (*on_sys_mq_timedreceive_enter_t)(CPUState* cpu, target_ulong pc, uint32_t mqdes, uint32_t msg_ptr, uint32_t msg_len, uint32_t msg_prio, uint32_t abs_timeout);
typedef void (*on_sys_mq_timedreceive_return_t)(CPUState* cpu, target_ulong pc, uint32_t mqdes, uint32_t msg_ptr, uint32_t msg_len, uint32_t msg_prio, uint32_t abs_timeout);
typedef void (*on_sys_mq_timedsend_enter_t)(CPUState* cpu, target_ulong pc, uint32_t mqdes, uint32_t msg_ptr, uint32_t msg_len, uint32_t msg_prio, uint32_t abs_timeout);
typedef void (*on_sys_mq_timedsend_return_t)(CPUState* cpu, target_ulong pc, uint32_t mqdes, uint32_t msg_ptr, uint32_t msg_len, uint32_t msg_prio, uint32_t abs_timeout);
typedef void (*on_sys_mq_unlink_enter_t)(CPUState* cpu, target_ulong pc, uint32_t name);
typedef void (*on_sys_mq_unlink_return_t)(CPUState* cpu, target_ulong pc, uint32_t name);
typedef void (*on_sys_mremap_enter_t)(CPUState* cpu, target_ulong pc, uint32_t addr, uint32_t old_len, uint32_t new_len, uint32_t flags, uint32_t new_addr);
typedef void (*on_sys_mremap_return_t)(CPUState* cpu, target_ulong pc, uint32_t addr, uint32_t old_len, uint32_t new_len, uint32_t flags, uint32_t new_addr);
typedef void (*on_sys_msync_enter_t)(CPUState* cpu, target_ulong pc, uint32_t start, uint32_t len, int32_t flags);
typedef void (*on_sys_msync_return_t)(CPUState* cpu, target_ulong pc, uint32_t start, uint32_t len, int32_t flags);
typedef void (*on_sys_munlock_enter_t)(CPUState* cpu, target_ulong pc, uint32_t start, uint32_t len);
typedef void (*on_sys_munlock_return_t)(CPUState* cpu, target_ulong pc, uint32_t start, uint32_t len);
typedef void (*on_sys_munlockall_enter_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_sys_munlockall_return_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_sys_munmap_enter_t)(CPUState* cpu, target_ulong pc, uint32_t addr, uint32_t len);
typedef void (*on_sys_munmap_return_t)(CPUState* cpu, target_ulong pc, uint32_t addr, uint32_t len);
typedef void (*on_sys_name_to_handle_at_enter_t)(CPUState* cpu, target_ulong pc, int32_t dfd, uint32_t name, uint32_t handle, uint32_t mnt_id, int32_t flag);
typedef void (*on_sys_name_to_handle_at_return_t)(CPUState* cpu, target_ulong pc, int32_t dfd, uint32_t name, uint32_t handle, uint32_t mnt_id, int32_t flag);
typedef void (*on_sys_nanosleep_enter_t)(CPUState* cpu, target_ulong pc, uint32_t rqtp, uint32_t rmtp);
typedef void (*on_sys_nanosleep_return_t)(CPUState* cpu, target_ulong pc, uint32_t rqtp, uint32_t rmtp);
typedef void (*on_sys_newfstat_enter_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t statbuf);
typedef void (*on_sys_newfstat_return_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t statbuf);
typedef void (*on_sys_newlstat_enter_t)(CPUState* cpu, target_ulong pc, uint32_t filename, uint32_t statbuf);
typedef void (*on_sys_newlstat_return_t)(CPUState* cpu, target_ulong pc, uint32_t filename, uint32_t statbuf);
typedef void (*on_sys_newstat_enter_t)(CPUState* cpu, target_ulong pc, uint32_t filename, uint32_t statbuf);
typedef void (*on_sys_newstat_return_t)(CPUState* cpu, target_ulong pc, uint32_t filename, uint32_t statbuf);
typedef void (*on_sys_newuname_enter_t)(CPUState* cpu, target_ulong pc, uint32_t name);
typedef void (*on_sys_newuname_return_t)(CPUState* cpu, target_ulong pc, uint32_t name);
typedef void (*on_sys_nice_enter_t)(CPUState* cpu, target_ulong pc, int32_t increment);
typedef void (*on_sys_nice_return_t)(CPUState* cpu, target_ulong pc, int32_t increment);
typedef void (*on_sys_old_getrlimit_enter_t)(CPUState* cpu, target_ulong pc, uint32_t resource, uint32_t rlim);
typedef void (*on_sys_old_getrlimit_return_t)(CPUState* cpu, target_ulong pc, uint32_t resource, uint32_t rlim);
typedef void (*on_sys_old_mmap_enter_t)(CPUState* cpu, target_ulong pc, uint32_t arg);
typedef void (*on_sys_old_mmap_return_t)(CPUState* cpu, target_ulong pc, uint32_t arg);
typedef void (*on_sys_old_readdir_enter_t)(CPUState* cpu, target_ulong pc, uint32_t arg0, uint32_t arg1, uint32_t arg2);
typedef void (*on_sys_old_readdir_return_t)(CPUState* cpu, target_ulong pc, uint32_t arg0, uint32_t arg1, uint32_t arg2);
typedef void (*on_sys_old_select_enter_t)(CPUState* cpu, target_ulong pc, uint32_t arg);
typedef void (*on_sys_old_select_return_t)(CPUState* cpu, target_ulong pc, uint32_t arg);
typedef void (*on_sys_oldumount_enter_t)(CPUState* cpu, target_ulong pc, uint32_t name);
typedef void (*on_sys_oldumount_return_t)(CPUState* cpu, target_ulong pc, uint32_t name);
typedef void (*on_sys_olduname_enter_t)(CPUState* cpu, target_ulong pc, uint32_t arg0);
typedef void (*on_sys_olduname_return_t)(CPUState* cpu, target_ulong pc, uint32_t arg0);
typedef void (*on_sys_open_enter_t)(CPUState* cpu, target_ulong pc, uint32_t filename, int32_t flags, int32_t mode);
typedef void (*on_sys_open_return_t)(CPUState* cpu, target_ulong pc, uint32_t filename, int32_t flags, int32_t mode);
typedef void (*on_sys_open_by_handle_at_enter_t)(CPUState* cpu, target_ulong pc, int32_t mountdirfd, uint32_t handle, int32_t flags);
typedef void (*on_sys_open_by_handle_at_return_t)(CPUState* cpu, target_ulong pc, int32_t mountdirfd, uint32_t handle, int32_t flags);
typedef void (*on_sys_openat_enter_t)(CPUState* cpu, target_ulong pc, int32_t dfd, uint32_t filename, int32_t flags, int32_t mode);
typedef void (*on_sys_openat_return_t)(CPUState* cpu, target_ulong pc, int32_t dfd, uint32_t filename, int32_t flags, int32_t mode);
typedef void (*on_sys_pause_enter_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_sys_pause_return_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_sys_perf_event_open_enter_t)(CPUState* cpu, target_ulong pc, uint32_t attr_uptr, uint32_t pid, int32_t _cpu, int32_t group_fd, uint32_t flags);
typedef void (*on_sys_perf_event_open_return_t)(CPUState* cpu, target_ulong pc, uint32_t attr_uptr, uint32_t pid, int32_t _cpu, int32_t group_fd, uint32_t flags);
typedef void (*on_sys_personality_enter_t)(CPUState* cpu, target_ulong pc, uint32_t personality);
typedef void (*on_sys_personality_return_t)(CPUState* cpu, target_ulong pc, uint32_t personality);
typedef void (*on_sys_pipe_enter_t)(CPUState* cpu, target_ulong pc, uint32_t fildes);
typedef void (*on_sys_pipe_return_t)(CPUState* cpu, target_ulong pc, uint32_t fildes);
typedef void (*on_sys_pipe2_enter_t)(CPUState* cpu, target_ulong pc, uint32_t fildes, int32_t flags);
typedef void (*on_sys_pipe2_return_t)(CPUState* cpu, target_ulong pc, uint32_t fildes, int32_t flags);
typedef void (*on_sys_pivot_root_enter_t)(CPUState* cpu, target_ulong pc, uint32_t new_root, uint32_t put_old);
typedef void (*on_sys_pivot_root_return_t)(CPUState* cpu, target_ulong pc, uint32_t new_root, uint32_t put_old);
typedef void (*on_sys_poll_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ufds, uint32_t nfds, int32_t timeout);
typedef void (*on_sys_poll_return_t)(CPUState* cpu, target_ulong pc, uint32_t ufds, uint32_t nfds, int32_t timeout);
typedef void (*on_sys_ppoll_enter_t)(CPUState* cpu, target_ulong pc, uint32_t arg0, uint32_t arg1, uint32_t arg2, uint32_t arg3, uint32_t arg4);
typedef void (*on_sys_ppoll_return_t)(CPUState* cpu, target_ulong pc, uint32_t arg0, uint32_t arg1, uint32_t arg2, uint32_t arg3, uint32_t arg4);
typedef void (*on_sys_prctl_enter_t)(CPUState* cpu, target_ulong pc, int32_t option, uint32_t arg2, uint32_t arg3, uint32_t arg4, uint32_t arg5);
typedef void (*on_sys_prctl_return_t)(CPUState* cpu, target_ulong pc, int32_t option, uint32_t arg2, uint32_t arg3, uint32_t arg4, uint32_t arg5);
typedef void (*on_sys_pread64_enter_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t buf, uint32_t count, uint64_t pos);
typedef void (*on_sys_pread64_return_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t buf, uint32_t count, uint64_t pos);
typedef void (*on_sys_preadv_enter_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t vec, uint32_t vlen, uint32_t pos_l, uint32_t pos_h);
typedef void (*on_sys_preadv_return_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t vec, uint32_t vlen, uint32_t pos_l, uint32_t pos_h);
typedef void (*on_sys_prlimit64_enter_t)(CPUState* cpu, target_ulong pc, uint32_t pid, uint32_t resource, uint32_t new_rlim, uint32_t old_rlim);
typedef void (*on_sys_prlimit64_return_t)(CPUState* cpu, target_ulong pc, uint32_t pid, uint32_t resource, uint32_t new_rlim, uint32_t old_rlim);
typedef void (*on_sys_process_vm_readv_enter_t)(CPUState* cpu, target_ulong pc, uint32_t pid, uint32_t lvec, uint32_t liovcnt, uint32_t rvec, uint32_t riovcnt, uint32_t flags);
typedef void (*on_sys_process_vm_readv_return_t)(CPUState* cpu, target_ulong pc, uint32_t pid, uint32_t lvec, uint32_t liovcnt, uint32_t rvec, uint32_t riovcnt, uint32_t flags);
typedef void (*on_sys_process_vm_writev_enter_t)(CPUState* cpu, target_ulong pc, uint32_t pid, uint32_t lvec, uint32_t liovcnt, uint32_t rvec, uint32_t riovcnt, uint32_t flags);
typedef void (*on_sys_process_vm_writev_return_t)(CPUState* cpu, target_ulong pc, uint32_t pid, uint32_t lvec, uint32_t liovcnt, uint32_t rvec, uint32_t riovcnt, uint32_t flags);
typedef void (*on_sys_pselect6_enter_t)(CPUState* cpu, target_ulong pc, int32_t arg0, uint32_t arg1, uint32_t arg2, uint32_t arg3, uint32_t arg4, uint32_t arg5);
typedef void (*on_sys_pselect6_return_t)(CPUState* cpu, target_ulong pc, int32_t arg0, uint32_t arg1, uint32_t arg2, uint32_t arg3, uint32_t arg4, uint32_t arg5);
typedef void (*on_sys_ptrace_enter_t)(CPUState* cpu, target_ulong pc, int32_t request, int32_t pid, uint32_t addr, uint32_t _data);
typedef void (*on_sys_ptrace_return_t)(CPUState* cpu, target_ulong pc, int32_t request, int32_t pid, uint32_t addr, uint32_t _data);
typedef void (*on_sys_pwrite64_enter_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t buf, uint32_t count, uint64_t pos);
typedef void (*on_sys_pwrite64_return_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t buf, uint32_t count, uint64_t pos);
typedef void (*on_sys_pwritev_enter_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t vec, uint32_t vlen, uint32_t pos_l, uint32_t pos_h);
typedef void (*on_sys_pwritev_return_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t vec, uint32_t vlen, uint32_t pos_l, uint32_t pos_h);
typedef void (*on_sys_quotactl_enter_t)(CPUState* cpu, target_ulong pc, uint32_t cmd, uint32_t special, uint32_t id, uint32_t addr);
typedef void (*on_sys_quotactl_return_t)(CPUState* cpu, target_ulong pc, uint32_t cmd, uint32_t special, uint32_t id, uint32_t addr);
typedef void (*on_sys_read_enter_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t buf, uint32_t count);
typedef void (*on_sys_read_return_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t buf, uint32_t count);
typedef void (*on_sys_readahead_enter_t)(CPUState* cpu, target_ulong pc, int32_t fd, uint64_t offset, uint32_t count);
typedef void (*on_sys_readahead_return_t)(CPUState* cpu, target_ulong pc, int32_t fd, uint64_t offset, uint32_t count);
typedef void (*on_sys_readlink_enter_t)(CPUState* cpu, target_ulong pc, uint32_t path, uint32_t buf, int32_t bufsiz);
typedef void (*on_sys_readlink_return_t)(CPUState* cpu, target_ulong pc, uint32_t path, uint32_t buf, int32_t bufsiz);
typedef void (*on_sys_readlinkat_enter_t)(CPUState* cpu, target_ulong pc, int32_t dfd, uint32_t path, uint32_t buf, int32_t bufsiz);
typedef void (*on_sys_readlinkat_return_t)(CPUState* cpu, target_ulong pc, int32_t dfd, uint32_t path, uint32_t buf, int32_t bufsiz);
typedef void (*on_sys_readv_enter_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t vec, uint32_t vlen);
typedef void (*on_sys_readv_return_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t vec, uint32_t vlen);
typedef void (*on_sys_reboot_enter_t)(CPUState* cpu, target_ulong pc, int32_t magic1, int32_t magic2, uint32_t cmd, uint32_t arg);
typedef void (*on_sys_reboot_return_t)(CPUState* cpu, target_ulong pc, int32_t magic1, int32_t magic2, uint32_t cmd, uint32_t arg);
typedef void (*on_sys_recvmmsg_enter_t)(CPUState* cpu, target_ulong pc, int32_t fd, uint32_t msg, uint32_t vlen, uint32_t flags, uint32_t timeout);
typedef void (*on_sys_recvmmsg_return_t)(CPUState* cpu, target_ulong pc, int32_t fd, uint32_t msg, uint32_t vlen, uint32_t flags, uint32_t timeout);
typedef void (*on_sys_remap_file_pages_enter_t)(CPUState* cpu, target_ulong pc, uint32_t start, uint32_t size, uint32_t prot, uint32_t pgoff, uint32_t flags);
typedef void (*on_sys_remap_file_pages_return_t)(CPUState* cpu, target_ulong pc, uint32_t start, uint32_t size, uint32_t prot, uint32_t pgoff, uint32_t flags);
typedef void (*on_sys_removexattr_enter_t)(CPUState* cpu, target_ulong pc, uint32_t path, uint32_t name);
typedef void (*on_sys_removexattr_return_t)(CPUState* cpu, target_ulong pc, uint32_t path, uint32_t name);
typedef void (*on_sys_rename_enter_t)(CPUState* cpu, target_ulong pc, uint32_t oldname, uint32_t newname);
typedef void (*on_sys_rename_return_t)(CPUState* cpu, target_ulong pc, uint32_t oldname, uint32_t newname);
typedef void (*on_sys_renameat_enter_t)(CPUState* cpu, target_ulong pc, int32_t olddfd, uint32_t oldname, int32_t newdfd, uint32_t newname);
typedef void (*on_sys_renameat_return_t)(CPUState* cpu, target_ulong pc, int32_t olddfd, uint32_t oldname, int32_t newdfd, uint32_t newname);
typedef void (*on_sys_request_key_enter_t)(CPUState* cpu, target_ulong pc, uint32_t _type, uint32_t _description, uint32_t _callout_info, uint32_t destringid);
typedef void (*on_sys_request_key_return_t)(CPUState* cpu, target_ulong pc, uint32_t _type, uint32_t _description, uint32_t _callout_info, uint32_t destringid);
typedef void (*on_sys_restart_syscall_enter_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_sys_restart_syscall_return_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_sys_rmdir_enter_t)(CPUState* cpu, target_ulong pc, uint32_t pathname);
typedef void (*on_sys_rmdir_return_t)(CPUState* cpu, target_ulong pc, uint32_t pathname);
typedef void (*on_sys_rt_sigpending_enter_t)(CPUState* cpu, target_ulong pc, uint32_t set, uint32_t sigsetsize);
typedef void (*on_sys_rt_sigpending_return_t)(CPUState* cpu, target_ulong pc, uint32_t set, uint32_t sigsetsize);
typedef void (*on_sys_rt_sigprocmask_enter_t)(CPUState* cpu, target_ulong pc, int32_t how, uint32_t set, uint32_t oset, uint32_t sigsetsize);
typedef void (*on_sys_rt_sigprocmask_return_t)(CPUState* cpu, target_ulong pc, int32_t how, uint32_t set, uint32_t oset, uint32_t sigsetsize);
typedef void (*on_sys_rt_sigqueueinfo_enter_t)(CPUState* cpu, target_ulong pc, int32_t pid, int32_t sig, uint32_t uinfo);
typedef void (*on_sys_rt_sigqueueinfo_return_t)(CPUState* cpu, target_ulong pc, int32_t pid, int32_t sig, uint32_t uinfo);
typedef void (*on_sys_rt_sigreturn_enter_t)(CPUState* cpu, target_ulong pc, uint32_t __unused);
typedef void (*on_sys_rt_sigreturn_return_t)(CPUState* cpu, target_ulong pc, uint32_t __unused);
typedef void (*on_sys_rt_sigsuspend_enter_t)(CPUState* cpu, target_ulong pc, uint32_t unewset, uint32_t sigsetsize);
typedef void (*on_sys_rt_sigsuspend_return_t)(CPUState* cpu, target_ulong pc, uint32_t unewset, uint32_t sigsetsize);
typedef void (*on_sys_rt_sigtimedwait_enter_t)(CPUState* cpu, target_ulong pc, uint32_t uthese, uint32_t uinfo, uint32_t uts, uint32_t sigsetsize);
typedef void (*on_sys_rt_sigtimedwait_return_t)(CPUState* cpu, target_ulong pc, uint32_t uthese, uint32_t uinfo, uint32_t uts, uint32_t sigsetsize);
typedef void (*on_sys_rt_tgsigqueueinfo_enter_t)(CPUState* cpu, target_ulong pc, uint32_t tgid, uint32_t pid, int32_t sig, uint32_t uinfo);
typedef void (*on_sys_rt_tgsigqueueinfo_return_t)(CPUState* cpu, target_ulong pc, uint32_t tgid, uint32_t pid, int32_t sig, uint32_t uinfo);
typedef void (*on_sys_sched_get_priority_max_enter_t)(CPUState* cpu, target_ulong pc, int32_t policy);
typedef void (*on_sys_sched_get_priority_max_return_t)(CPUState* cpu, target_ulong pc, int32_t policy);
typedef void (*on_sys_sched_get_priority_min_enter_t)(CPUState* cpu, target_ulong pc, int32_t policy);
typedef void (*on_sys_sched_get_priority_min_return_t)(CPUState* cpu, target_ulong pc, int32_t policy);
typedef void (*on_sys_sched_getaffinity_enter_t)(CPUState* cpu, target_ulong pc, uint32_t pid, uint32_t len, uint32_t user_mask_ptr);
typedef void (*on_sys_sched_getaffinity_return_t)(CPUState* cpu, target_ulong pc, uint32_t pid, uint32_t len, uint32_t user_mask_ptr);
typedef void (*on_sys_sched_getparam_enter_t)(CPUState* cpu, target_ulong pc, uint32_t pid, uint32_t param);
typedef void (*on_sys_sched_getparam_return_t)(CPUState* cpu, target_ulong pc, uint32_t pid, uint32_t param);
typedef void (*on_sys_sched_getscheduler_enter_t)(CPUState* cpu, target_ulong pc, uint32_t pid);
typedef void (*on_sys_sched_getscheduler_return_t)(CPUState* cpu, target_ulong pc, uint32_t pid);
typedef void (*on_sys_sched_rr_get_interval_enter_t)(CPUState* cpu, target_ulong pc, uint32_t pid, uint32_t interval);
typedef void (*on_sys_sched_rr_get_interval_return_t)(CPUState* cpu, target_ulong pc, uint32_t pid, uint32_t interval);
typedef void (*on_sys_sched_setaffinity_enter_t)(CPUState* cpu, target_ulong pc, uint32_t pid, uint32_t len, uint32_t user_mask_ptr);
typedef void (*on_sys_sched_setaffinity_return_t)(CPUState* cpu, target_ulong pc, uint32_t pid, uint32_t len, uint32_t user_mask_ptr);
typedef void (*on_sys_sched_setparam_enter_t)(CPUState* cpu, target_ulong pc, uint32_t pid, uint32_t param);
typedef void (*on_sys_sched_setparam_return_t)(CPUState* cpu, target_ulong pc, uint32_t pid, uint32_t param);
typedef void (*on_sys_sched_setscheduler_enter_t)(CPUState* cpu, target_ulong pc, uint32_t pid, int32_t policy, uint32_t param);
typedef void (*on_sys_sched_setscheduler_return_t)(CPUState* cpu, target_ulong pc, uint32_t pid, int32_t policy, uint32_t param);
typedef void (*on_sys_sched_yield_enter_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_sys_sched_yield_return_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_sys_select_enter_t)(CPUState* cpu, target_ulong pc, int32_t n, uint32_t inp, uint32_t outp, uint32_t exp, uint32_t tvp);
typedef void (*on_sys_select_return_t)(CPUState* cpu, target_ulong pc, int32_t n, uint32_t inp, uint32_t outp, uint32_t exp, uint32_t tvp);
typedef void (*on_sys_sendfile_enter_t)(CPUState* cpu, target_ulong pc, int32_t out_fd, int32_t in_fd, uint32_t offset, uint32_t count);
typedef void (*on_sys_sendfile_return_t)(CPUState* cpu, target_ulong pc, int32_t out_fd, int32_t in_fd, uint32_t offset, uint32_t count);
typedef void (*on_sys_sendfile64_enter_t)(CPUState* cpu, target_ulong pc, int32_t out_fd, int32_t in_fd, uint32_t offset, uint32_t count);
typedef void (*on_sys_sendfile64_return_t)(CPUState* cpu, target_ulong pc, int32_t out_fd, int32_t in_fd, uint32_t offset, uint32_t count);
typedef void (*on_sys_sendmmsg_enter_t)(CPUState* cpu, target_ulong pc, int32_t fd, uint32_t msg, uint32_t vlen, uint32_t flags);
typedef void (*on_sys_sendmmsg_return_t)(CPUState* cpu, target_ulong pc, int32_t fd, uint32_t msg, uint32_t vlen, uint32_t flags);
typedef void (*on_sys_set_mempolicy_enter_t)(CPUState* cpu, target_ulong pc, int32_t mode, uint32_t nmask, uint32_t maxnode);
typedef void (*on_sys_set_mempolicy_return_t)(CPUState* cpu, target_ulong pc, int32_t mode, uint32_t nmask, uint32_t maxnode);
typedef void (*on_sys_set_robust_list_enter_t)(CPUState* cpu, target_ulong pc, uint32_t head, uint32_t len);
typedef void (*on_sys_set_robust_list_return_t)(CPUState* cpu, target_ulong pc, uint32_t head, uint32_t len);
typedef void (*on_sys_set_tid_address_enter_t)(CPUState* cpu, target_ulong pc, uint32_t tidptr);
typedef void (*on_sys_set_tid_address_return_t)(CPUState* cpu, target_ulong pc, uint32_t tidptr);
typedef void (*on_sys_setdomainname_enter_t)(CPUState* cpu, target_ulong pc, uint32_t name, int32_t len);
typedef void (*on_sys_setdomainname_return_t)(CPUState* cpu, target_ulong pc, uint32_t name, int32_t len);
typedef void (*on_sys_setfsgid_enter_t)(CPUState* cpu, target_ulong pc, uint32_t gid);
typedef void (*on_sys_setfsgid_return_t)(CPUState* cpu, target_ulong pc, uint32_t gid);
typedef void (*on_sys_setfsgid16_enter_t)(CPUState* cpu, target_ulong pc, uint32_t gid);
typedef void (*on_sys_setfsgid16_return_t)(CPUState* cpu, target_ulong pc, uint32_t gid);
typedef void (*on_sys_setfsuid_enter_t)(CPUState* cpu, target_ulong pc, uint32_t uid);
typedef void (*on_sys_setfsuid_return_t)(CPUState* cpu, target_ulong pc, uint32_t uid);
typedef void (*on_sys_setfsuid16_enter_t)(CPUState* cpu, target_ulong pc, uint32_t uid);
typedef void (*on_sys_setfsuid16_return_t)(CPUState* cpu, target_ulong pc, uint32_t uid);
typedef void (*on_sys_setgid_enter_t)(CPUState* cpu, target_ulong pc, uint32_t gid);
typedef void (*on_sys_setgid_return_t)(CPUState* cpu, target_ulong pc, uint32_t gid);
typedef void (*on_sys_setgid16_enter_t)(CPUState* cpu, target_ulong pc, uint32_t gid);
typedef void (*on_sys_setgid16_return_t)(CPUState* cpu, target_ulong pc, uint32_t gid);
typedef void (*on_sys_setgroups_enter_t)(CPUState* cpu, target_ulong pc, int32_t gidsetsize, uint32_t grouplist);
typedef void (*on_sys_setgroups_return_t)(CPUState* cpu, target_ulong pc, int32_t gidsetsize, uint32_t grouplist);
typedef void (*on_sys_setgroups16_enter_t)(CPUState* cpu, target_ulong pc, int32_t gidsetsize, uint32_t grouplist);
typedef void (*on_sys_setgroups16_return_t)(CPUState* cpu, target_ulong pc, int32_t gidsetsize, uint32_t grouplist);
typedef void (*on_sys_sethostname_enter_t)(CPUState* cpu, target_ulong pc, uint32_t name, int32_t len);
typedef void (*on_sys_sethostname_return_t)(CPUState* cpu, target_ulong pc, uint32_t name, int32_t len);
typedef void (*on_sys_setitimer_enter_t)(CPUState* cpu, target_ulong pc, int32_t which, uint32_t value, uint32_t ovalue);
typedef void (*on_sys_setitimer_return_t)(CPUState* cpu, target_ulong pc, int32_t which, uint32_t value, uint32_t ovalue);
typedef void (*on_sys_setns_enter_t)(CPUState* cpu, target_ulong pc, int32_t fd, int32_t nstype);
typedef void (*on_sys_setns_return_t)(CPUState* cpu, target_ulong pc, int32_t fd, int32_t nstype);
typedef void (*on_sys_setpgid_enter_t)(CPUState* cpu, target_ulong pc, uint32_t pid, uint32_t pgid);
typedef void (*on_sys_setpgid_return_t)(CPUState* cpu, target_ulong pc, uint32_t pid, uint32_t pgid);
typedef void (*on_sys_setpriority_enter_t)(CPUState* cpu, target_ulong pc, int32_t which, int32_t who, int32_t niceval);
typedef void (*on_sys_setpriority_return_t)(CPUState* cpu, target_ulong pc, int32_t which, int32_t who, int32_t niceval);
typedef void (*on_sys_setregid_enter_t)(CPUState* cpu, target_ulong pc, uint32_t rgid, uint32_t egid);
typedef void (*on_sys_setregid_return_t)(CPUState* cpu, target_ulong pc, uint32_t rgid, uint32_t egid);
typedef void (*on_sys_setregid16_enter_t)(CPUState* cpu, target_ulong pc, uint32_t rgid, uint32_t egid);
typedef void (*on_sys_setregid16_return_t)(CPUState* cpu, target_ulong pc, uint32_t rgid, uint32_t egid);
typedef void (*on_sys_setresgid_enter_t)(CPUState* cpu, target_ulong pc, uint32_t rgid, uint32_t egid, uint32_t sgid);
typedef void (*on_sys_setresgid_return_t)(CPUState* cpu, target_ulong pc, uint32_t rgid, uint32_t egid, uint32_t sgid);
typedef void (*on_sys_setresgid16_enter_t)(CPUState* cpu, target_ulong pc, uint32_t rgid, uint32_t egid, uint32_t sgid);
typedef void (*on_sys_setresgid16_return_t)(CPUState* cpu, target_ulong pc, uint32_t rgid, uint32_t egid, uint32_t sgid);
typedef void (*on_sys_setresuid_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ruid, uint32_t euid, uint32_t suid);
typedef void (*on_sys_setresuid_return_t)(CPUState* cpu, target_ulong pc, uint32_t ruid, uint32_t euid, uint32_t suid);
typedef void (*on_sys_setresuid16_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ruid, uint32_t euid, uint32_t suid);
typedef void (*on_sys_setresuid16_return_t)(CPUState* cpu, target_ulong pc, uint32_t ruid, uint32_t euid, uint32_t suid);
typedef void (*on_sys_setreuid_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ruid, uint32_t euid);
typedef void (*on_sys_setreuid_return_t)(CPUState* cpu, target_ulong pc, uint32_t ruid, uint32_t euid);
typedef void (*on_sys_setreuid16_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ruid, uint32_t euid);
typedef void (*on_sys_setreuid16_return_t)(CPUState* cpu, target_ulong pc, uint32_t ruid, uint32_t euid);
typedef void (*on_sys_setrlimit_enter_t)(CPUState* cpu, target_ulong pc, uint32_t resource, uint32_t rlim);
typedef void (*on_sys_setrlimit_return_t)(CPUState* cpu, target_ulong pc, uint32_t resource, uint32_t rlim);
typedef void (*on_sys_setsid_enter_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_sys_setsid_return_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_sys_settimeofday_enter_t)(CPUState* cpu, target_ulong pc, uint32_t tv, uint32_t tz);
typedef void (*on_sys_settimeofday_return_t)(CPUState* cpu, target_ulong pc, uint32_t tv, uint32_t tz);
typedef void (*on_sys_setuid_enter_t)(CPUState* cpu, target_ulong pc, uint32_t uid);
typedef void (*on_sys_setuid_return_t)(CPUState* cpu, target_ulong pc, uint32_t uid);
typedef void (*on_sys_setuid16_enter_t)(CPUState* cpu, target_ulong pc, uint32_t uid);
typedef void (*on_sys_setuid16_return_t)(CPUState* cpu, target_ulong pc, uint32_t uid);
typedef void (*on_sys_setxattr_enter_t)(CPUState* cpu, target_ulong pc, uint32_t path, uint32_t name, uint32_t value, uint32_t size, int32_t flags);
typedef void (*on_sys_setxattr_return_t)(CPUState* cpu, target_ulong pc, uint32_t path, uint32_t name, uint32_t value, uint32_t size, int32_t flags);
typedef void (*on_sys_sgetmask_enter_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_sys_sgetmask_return_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_sys_sigaltstack_enter_t)(CPUState* cpu, target_ulong pc, uint32_t ss, uint32_t oss);
typedef void (*on_sys_sigaltstack_return_t)(CPUState* cpu, target_ulong pc, uint32_t ss, uint32_t oss);
typedef void (*on_sys_signal_enter_t)(CPUState* cpu, target_ulong pc, int32_t sig, uint32_t handler);
typedef void (*on_sys_signal_return_t)(CPUState* cpu, target_ulong pc, int32_t sig, uint32_t handler);
typedef void (*on_sys_signalfd_enter_t)(CPUState* cpu, target_ulong pc, int32_t ufd, uint32_t user_mask, uint32_t sizemask);
typedef void (*on_sys_signalfd_return_t)(CPUState* cpu, target_ulong pc, int32_t ufd, uint32_t user_mask, uint32_t sizemask);
typedef void (*on_sys_signalfd4_enter_t)(CPUState* cpu, target_ulong pc, int32_t ufd, uint32_t user_mask, uint32_t sizemask, int32_t flags);
typedef void (*on_sys_signalfd4_return_t)(CPUState* cpu, target_ulong pc, int32_t ufd, uint32_t user_mask, uint32_t sizemask, int32_t flags);
typedef void (*on_sys_sigpending_enter_t)(CPUState* cpu, target_ulong pc, uint32_t set);
typedef void (*on_sys_sigpending_return_t)(CPUState* cpu, target_ulong pc, uint32_t set);
typedef void (*on_sys_sigprocmask_enter_t)(CPUState* cpu, target_ulong pc, int32_t how, uint32_t set, uint32_t oset);
typedef void (*on_sys_sigprocmask_return_t)(CPUState* cpu, target_ulong pc, int32_t how, uint32_t set, uint32_t oset);
typedef void (*on_sys_sigreturn_enter_t)(CPUState* cpu, target_ulong pc, uint32_t __unused);
typedef void (*on_sys_sigreturn_return_t)(CPUState* cpu, target_ulong pc, uint32_t __unused);
typedef void (*on_sys_socketcall_enter_t)(CPUState* cpu, target_ulong pc, int32_t call, uint32_t args);
typedef void (*on_sys_socketcall_return_t)(CPUState* cpu, target_ulong pc, int32_t call, uint32_t args);
typedef void (*on_sys_splice_enter_t)(CPUState* cpu, target_ulong pc, int32_t fd_in, uint32_t off_in, int32_t fd_out, uint32_t off_out, uint32_t len, uint32_t flags);
typedef void (*on_sys_splice_return_t)(CPUState* cpu, target_ulong pc, int32_t fd_in, uint32_t off_in, int32_t fd_out, uint32_t off_out, uint32_t len, uint32_t flags);
typedef void (*on_sys_ssetmask_enter_t)(CPUState* cpu, target_ulong pc, int32_t newmask);
typedef void (*on_sys_ssetmask_return_t)(CPUState* cpu, target_ulong pc, int32_t newmask);
typedef void (*on_sys_stat_enter_t)(CPUState* cpu, target_ulong pc, uint32_t filename, uint32_t statbuf);
typedef void (*on_sys_stat_return_t)(CPUState* cpu, target_ulong pc, uint32_t filename, uint32_t statbuf);
typedef void (*on_sys_stat64_enter_t)(CPUState* cpu, target_ulong pc, uint32_t filename, uint32_t statbuf);
typedef void (*on_sys_stat64_return_t)(CPUState* cpu, target_ulong pc, uint32_t filename, uint32_t statbuf);
typedef void (*on_sys_statfs_enter_t)(CPUState* cpu, target_ulong pc, uint32_t path, uint32_t buf);
typedef void (*on_sys_statfs_return_t)(CPUState* cpu, target_ulong pc, uint32_t path, uint32_t buf);
typedef void (*on_sys_statfs64_enter_t)(CPUState* cpu, target_ulong pc, uint32_t path, uint32_t sz, uint32_t buf);
typedef void (*on_sys_statfs64_return_t)(CPUState* cpu, target_ulong pc, uint32_t path, uint32_t sz, uint32_t buf);
typedef void (*on_sys_stime_enter_t)(CPUState* cpu, target_ulong pc, uint32_t tptr);
typedef void (*on_sys_stime_return_t)(CPUState* cpu, target_ulong pc, uint32_t tptr);
typedef void (*on_sys_swapoff_enter_t)(CPUState* cpu, target_ulong pc, uint32_t specialfile);
typedef void (*on_sys_swapoff_return_t)(CPUState* cpu, target_ulong pc, uint32_t specialfile);
typedef void (*on_sys_swapon_enter_t)(CPUState* cpu, target_ulong pc, uint32_t specialfile, int32_t swap_flags);
typedef void (*on_sys_swapon_return_t)(CPUState* cpu, target_ulong pc, uint32_t specialfile, int32_t swap_flags);
typedef void (*on_sys_symlink_enter_t)(CPUState* cpu, target_ulong pc, uint32_t old, uint32_t _new);
typedef void (*on_sys_symlink_return_t)(CPUState* cpu, target_ulong pc, uint32_t old, uint32_t _new);
typedef void (*on_sys_symlinkat_enter_t)(CPUState* cpu, target_ulong pc, uint32_t oldname, int32_t newdfd, uint32_t newname);
typedef void (*on_sys_symlinkat_return_t)(CPUState* cpu, target_ulong pc, uint32_t oldname, int32_t newdfd, uint32_t newname);
typedef void (*on_sys_sync_enter_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_sys_sync_return_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_sys_sync_file_range_enter_t)(CPUState* cpu, target_ulong pc, int32_t fd, uint64_t offset, uint64_t nbytes, uint32_t flags);
typedef void (*on_sys_sync_file_range_return_t)(CPUState* cpu, target_ulong pc, int32_t fd, uint64_t offset, uint64_t nbytes, uint32_t flags);
typedef void (*on_sys_syncfs_enter_t)(CPUState* cpu, target_ulong pc, int32_t fd);
typedef void (*on_sys_syncfs_return_t)(CPUState* cpu, target_ulong pc, int32_t fd);
typedef void (*on_sys_sysctl_enter_t)(CPUState* cpu, target_ulong pc, uint32_t args);
typedef void (*on_sys_sysctl_return_t)(CPUState* cpu, target_ulong pc, uint32_t args);
typedef void (*on_sys_sysfs_enter_t)(CPUState* cpu, target_ulong pc, int32_t option, uint32_t arg1, uint32_t arg2);
typedef void (*on_sys_sysfs_return_t)(CPUState* cpu, target_ulong pc, int32_t option, uint32_t arg1, uint32_t arg2);
typedef void (*on_sys_sysinfo_enter_t)(CPUState* cpu, target_ulong pc, uint32_t info);
typedef void (*on_sys_sysinfo_return_t)(CPUState* cpu, target_ulong pc, uint32_t info);
typedef void (*on_sys_syslog_enter_t)(CPUState* cpu, target_ulong pc, int32_t type, uint32_t buf, int32_t len);
typedef void (*on_sys_syslog_return_t)(CPUState* cpu, target_ulong pc, int32_t type, uint32_t buf, int32_t len);
typedef void (*on_sys_tee_enter_t)(CPUState* cpu, target_ulong pc, int32_t fdin, int32_t fdout, uint32_t len, uint32_t flags);
typedef void (*on_sys_tee_return_t)(CPUState* cpu, target_ulong pc, int32_t fdin, int32_t fdout, uint32_t len, uint32_t flags);
typedef void (*on_sys_tgkill_enter_t)(CPUState* cpu, target_ulong pc, int32_t tgid, int32_t pid, int32_t sig);
typedef void (*on_sys_tgkill_return_t)(CPUState* cpu, target_ulong pc, int32_t tgid, int32_t pid, int32_t sig);
typedef void (*on_sys_time_enter_t)(CPUState* cpu, target_ulong pc, uint32_t tloc);
typedef void (*on_sys_time_return_t)(CPUState* cpu, target_ulong pc, uint32_t tloc);
typedef void (*on_sys_timer_create_enter_t)(CPUState* cpu, target_ulong pc, uint32_t which_clock, uint32_t timer_event_spec, uint32_t created_timer_id);
typedef void (*on_sys_timer_create_return_t)(CPUState* cpu, target_ulong pc, uint32_t which_clock, uint32_t timer_event_spec, uint32_t created_timer_id);
typedef void (*on_sys_timer_delete_enter_t)(CPUState* cpu, target_ulong pc, uint32_t timer_id);
typedef void (*on_sys_timer_delete_return_t)(CPUState* cpu, target_ulong pc, uint32_t timer_id);
typedef void (*on_sys_timer_getoverrun_enter_t)(CPUState* cpu, target_ulong pc, uint32_t timer_id);
typedef void (*on_sys_timer_getoverrun_return_t)(CPUState* cpu, target_ulong pc, uint32_t timer_id);
typedef void (*on_sys_timer_gettime_enter_t)(CPUState* cpu, target_ulong pc, uint32_t timer_id, uint32_t setting);
typedef void (*on_sys_timer_gettime_return_t)(CPUState* cpu, target_ulong pc, uint32_t timer_id, uint32_t setting);
typedef void (*on_sys_timer_settime_enter_t)(CPUState* cpu, target_ulong pc, uint32_t timer_id, int32_t flags, uint32_t new_setting, uint32_t old_setting);
typedef void (*on_sys_timer_settime_return_t)(CPUState* cpu, target_ulong pc, uint32_t timer_id, int32_t flags, uint32_t new_setting, uint32_t old_setting);
typedef void (*on_sys_timerfd_create_enter_t)(CPUState* cpu, target_ulong pc, int32_t clockid, int32_t flags);
typedef void (*on_sys_timerfd_create_return_t)(CPUState* cpu, target_ulong pc, int32_t clockid, int32_t flags);
typedef void (*on_sys_timerfd_gettime_enter_t)(CPUState* cpu, target_ulong pc, int32_t ufd, uint32_t otmr);
typedef void (*on_sys_timerfd_gettime_return_t)(CPUState* cpu, target_ulong pc, int32_t ufd, uint32_t otmr);
typedef void (*on_sys_timerfd_settime_enter_t)(CPUState* cpu, target_ulong pc, int32_t ufd, int32_t flags, uint32_t utmr, uint32_t otmr);
typedef void (*on_sys_timerfd_settime_return_t)(CPUState* cpu, target_ulong pc, int32_t ufd, int32_t flags, uint32_t utmr, uint32_t otmr);
typedef void (*on_sys_times_enter_t)(CPUState* cpu, target_ulong pc, uint32_t tbuf);
typedef void (*on_sys_times_return_t)(CPUState* cpu, target_ulong pc, uint32_t tbuf);
typedef void (*on_sys_tkill_enter_t)(CPUState* cpu, target_ulong pc, int32_t pid, int32_t sig);
typedef void (*on_sys_tkill_return_t)(CPUState* cpu, target_ulong pc, int32_t pid, int32_t sig);
typedef void (*on_sys_truncate_enter_t)(CPUState* cpu, target_ulong pc, uint32_t path, int32_t length);
typedef void (*on_sys_truncate_return_t)(CPUState* cpu, target_ulong pc, uint32_t path, int32_t length);
typedef void (*on_sys_truncate64_enter_t)(CPUState* cpu, target_ulong pc, uint32_t path, uint64_t length);
typedef void (*on_sys_truncate64_return_t)(CPUState* cpu, target_ulong pc, uint32_t path, uint64_t length);
typedef void (*on_sys_umask_enter_t)(CPUState* cpu, target_ulong pc, int32_t mask);
typedef void (*on_sys_umask_return_t)(CPUState* cpu, target_ulong pc, int32_t mask);
typedef void (*on_sys_umount_enter_t)(CPUState* cpu, target_ulong pc, uint32_t name, int32_t flags);
typedef void (*on_sys_umount_return_t)(CPUState* cpu, target_ulong pc, uint32_t name, int32_t flags);
typedef void (*on_sys_uname_enter_t)(CPUState* cpu, target_ulong pc, uint32_t arg0);
typedef void (*on_sys_uname_return_t)(CPUState* cpu, target_ulong pc, uint32_t arg0);
typedef void (*on_sys_unlink_enter_t)(CPUState* cpu, target_ulong pc, uint32_t pathname);
typedef void (*on_sys_unlink_return_t)(CPUState* cpu, target_ulong pc, uint32_t pathname);
typedef void (*on_sys_unlinkat_enter_t)(CPUState* cpu, target_ulong pc, int32_t dfd, uint32_t pathname, int32_t flag);
typedef void (*on_sys_unlinkat_return_t)(CPUState* cpu, target_ulong pc, int32_t dfd, uint32_t pathname, int32_t flag);
typedef void (*on_sys_unshare_enter_t)(CPUState* cpu, target_ulong pc, uint32_t unshare_flags);
typedef void (*on_sys_unshare_return_t)(CPUState* cpu, target_ulong pc, uint32_t unshare_flags);
typedef void (*on_sys_uselib_enter_t)(CPUState* cpu, target_ulong pc, uint32_t library);
typedef void (*on_sys_uselib_return_t)(CPUState* cpu, target_ulong pc, uint32_t library);
typedef void (*on_sys_ustat_enter_t)(CPUState* cpu, target_ulong pc, uint32_t dev, uint32_t ubuf);
typedef void (*on_sys_ustat_return_t)(CPUState* cpu, target_ulong pc, uint32_t dev, uint32_t ubuf);
typedef void (*on_sys_utime_enter_t)(CPUState* cpu, target_ulong pc, uint32_t filename, uint32_t times);
typedef void (*on_sys_utime_return_t)(CPUState* cpu, target_ulong pc, uint32_t filename, uint32_t times);
typedef void (*on_sys_utimensat_enter_t)(CPUState* cpu, target_ulong pc, int32_t dfd, uint32_t filename, uint32_t utimes, int32_t flags);
typedef void (*on_sys_utimensat_return_t)(CPUState* cpu, target_ulong pc, int32_t dfd, uint32_t filename, uint32_t utimes, int32_t flags);
typedef void (*on_sys_utimes_enter_t)(CPUState* cpu, target_ulong pc, uint32_t filename, uint32_t utimes);
typedef void (*on_sys_utimes_return_t)(CPUState* cpu, target_ulong pc, uint32_t filename, uint32_t utimes);
typedef void (*on_sys_vfork_enter_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_sys_vfork_return_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_sys_vhangup_enter_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_sys_vhangup_return_t)(CPUState* cpu, target_ulong pc);
typedef void (*on_sys_vm86_enter_t)(CPUState* cpu, target_ulong pc, uint32_t fn, uint32_t v86);
typedef void (*on_sys_vm86_return_t)(CPUState* cpu, target_ulong pc, uint32_t fn, uint32_t v86);
typedef void (*on_sys_vm86old_enter_t)(CPUState* cpu, target_ulong pc, uint32_t info);
typedef void (*on_sys_vm86old_return_t)(CPUState* cpu, target_ulong pc, uint32_t info);
typedef void (*on_sys_vmsplice_enter_t)(CPUState* cpu, target_ulong pc, int32_t fd, uint32_t iov, uint32_t nr_segs, uint32_t flags);
typedef void (*on_sys_vmsplice_return_t)(CPUState* cpu, target_ulong pc, int32_t fd, uint32_t iov, uint32_t nr_segs, uint32_t flags);
typedef void (*on_sys_wait4_enter_t)(CPUState* cpu, target_ulong pc, uint32_t pid, uint32_t stat_addr, int32_t options, uint32_t ru);
typedef void (*on_sys_wait4_return_t)(CPUState* cpu, target_ulong pc, uint32_t pid, uint32_t stat_addr, int32_t options, uint32_t ru);
typedef void (*on_sys_waitid_enter_t)(CPUState* cpu, target_ulong pc, int32_t which, uint32_t pid, uint32_t infop, int32_t options, uint32_t ru);
typedef void (*on_sys_waitid_return_t)(CPUState* cpu, target_ulong pc, int32_t which, uint32_t pid, uint32_t infop, int32_t options, uint32_t ru);
typedef void (*on_sys_waitpid_enter_t)(CPUState* cpu, target_ulong pc, uint32_t pid, uint32_t stat_addr, int32_t options);
typedef void (*on_sys_waitpid_return_t)(CPUState* cpu, target_ulong pc, uint32_t pid, uint32_t stat_addr, int32_t options);
typedef void (*on_sys_write_enter_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t buf, uint32_t count);
typedef void (*on_sys_write_return_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t buf, uint32_t count);
typedef void (*on_sys_writev_enter_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t vec, uint32_t vlen);
typedef void (*on_sys_writev_return_t)(CPUState* cpu, target_ulong pc, uint32_t fd, uint32_t vec, uint32_t vlen);
#endif

typedef void (*on_all_sys_enter_t)(CPUState *cpu, target_ulong pc, target_ulong callno);
typedef void (*on_all_sys_return_t)(CPUState *cpu, target_ulong pc, target_ulong callno);
typedef void (*on_unknown_sys_enter_t)(CPUState *cpu, target_ulong pc, target_ulong callno);
typedef void (*on_unknown_sys_return_t)(CPUState *cpu, target_ulong pc, target_ulong callno);

/* vim: set tabstop=4 softtabstop=4 noexpandtab ft=cpp: */